Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
向DataTables.js添加加密层_Datatables - Fatal编程技术网

向DataTables.js添加加密层

向DataTables.js添加加密层,datatables,Datatables,我目前正在使用用PHP编写的服务器站点数据源 服务器端脚本完全按照datatables的要求提供数据: {“iTotalDisplayRecords”:“777”,“sEcho”:0,“aaData”:[[row1],[row2],[row3]} 现在,我想添加一个额外的安全层,对来自服务器的响应进行加密,并在datatables接收到响应后对其进行解密 我需要这个,因为我注意到一些客户端通过HTTPS代理工作,并且一些行的内容被错误地阻止 我使用for服务器端PHP脚本使用openssl\u

我目前正在使用用PHP编写的服务器站点数据源

服务器端脚本完全按照datatables的要求提供数据:

{“iTotalDisplayRecords”:“777”,“sEcho”:0,“aaData”:[[row1],[row2],[row3]}

现在,我想添加一个额外的安全层,对来自服务器的响应进行加密,并在datatables接收到响应后对其进行解密

我需要这个,因为我注意到一些客户端通过HTTPS代理工作,并且一些行的内容被错误地阻止

我使用for服务器端PHP脚本使用openssl\u encrypt发布加密内容

在客户端,我有:

function datatable_init (source) {
  $.getJSON(source, function(data) {
    decryptedContent = JSON.parse(CryptoJSAesDecrypt(“password”, data));
    oTable = $(‘dtable’).dataTable({
      “bProccesing”: false,
      “bServerSide: true,
      //“sAjaxSource”: source,
      “data”: decryptedContent
      ...
    });
我不得不将“sAjaxSource”替换为“data”,因为它现在是不同的数据源类型,需要不同类型的datatable JSON格式:

{数据:[[row1],[row2],[row3]}

而且我再也不能通过iTotalDisplayRecords了

是否有一种方法可以将JSON的服务器端格式一直提供给datatable,但将其作为本地JS对象/数组提供


另外,我的另一个想法是对表中的每一行进行加密/解密,但这可能会更复杂、更慢。ajax.dataSrc选项似乎很有用,因为它提供了修改通过ajax接收的数据的可能性,从而允许您定义一个函数,负责解密接收的数据再次使用ved数据。在我看来,特别是上一个例子看起来很有希望。

通过浏览器在客户端对任何要解密的内容进行加密是完全没有意义的,因为客户端不能进行加密trusted@eddiewould但我至少会选择代理。否则,浏览器扩展是否更安全?1确保只提供API通过HTTPS防止窃听2确保您有适当的身份验证和授权机制,以便您知道谁访问您的API,并且他们有权限访问您的API。@Eddie是的,我有权限。在这种情况下,会话id是JS加密的好密码吗?除非ss出了点问题-HTTPS是端到端加密-这就是问题的关键所在。