加密URL Coldfusion和JQuery数据表

Stack Overflow用户,

我有一个服务器端JQuery Datatable,我正在尝试加密记录ID。 我已经在CFLOOP中的基本数据表上使用了这种方法,但我无法在JavaScript中完成。

以下是我目前的代码。

{ "targets": 1, "data": "LAST_NAME",   "render": function ( data, type, row, meta ) {return ''+ data+'';}, }, 

当我解密url时,它会显示+ data + 。 当我更改它以使用L vairble时,我得到正确的ID号但它没有加密

 {return ''+ data+'';} 

我知道它与使用CFSCRIPT有关,但我不清楚如何使用它。 任何帮助都会很棒。

虽然有很多方法可以加密url,但我发现在我的情况下,最好的方法是在JavaScript切换之前拦截JSON请求中的EMPLOYEE_ID。

   

从上面的示例中可以看出,在将Employee_ID传递给JSON响应之前,会对其进行修改。 成功加密员工ID并创建更安全的URL。

如果您尝试从ColdFusion加密JavaScript变量,那是不可能的。 ColdFusion是一种服务器端语言。 它无法访问JavaScript代码和/或变量,反之亦然。 在将任何数据发送到客户端之前,必须在服务器端完成对ColdFusion的任何加密。

虽然你可以使用cfscript,有些人甚至更喜欢它,但从技术上讲你并不“必须”。 循环虽然查询和加密值可以使用CFML或cfscript完成。

TryCF.com示例

CFSCRIPT

 // simulate query data myKey = generateSecretKey("AES"); qry = queryNew("l_id,last_name" , "integer,varchar" , [ {l_id=1, last_name="Johnson"} , {l_id=2, last_name="Carson"} , {l_id=3, last_name="Jackson"} ] ); // encrypt query values for (row in qry) { qry.l_id[qry.currentRow] = encrypt(row.l_id, myKey,"AES/CBC/PKCS5Padding", "HEX"); } writeDump(var=qry, label="Query (After)"); 

CFML

         
Interesting Posts