ajax地址参数与data参数运用

时间:2024-10-16 21:32:27

ajax的运用

因为项目在进行安全准入检查,也是代码安全的一种处理方式吧,然后我们在进行行加密以及模块加密,就是因为行信息中存在行id可以通过更换行id进行查询其他行的信息,模块也是一样,可能会出现垂直越权以及水平越权,所以为了处理这个问题,我们增加了行加密以及模块加密,对于行id和模块名进行加密,后台增加处理,如果行id和模块名无法匹配则无法进行。
上面是前提,但是遇到一个蛮尴尬的问题,加密的字符串是通过ajax传递的参数类似。

问题

在这里插入图片描述
因为是这样的

    var url = encodeURI(top.server+"/assetDetailsQueryAll/exportDetailViewListPeriodName?"+ postStr);
    $.ajax({
      url:  url,
      type: 'post',
      dataType: "JSON",
    })

因为具体的加密字段在接口后面用?接着,就导致了加好变成了空格,后台校验没有通过,被浏览器给解析了,实话说好久没有写过了前端了,我以为要都改成参数化的,或者是直接提交表单的,from的提交,然后问了问才知道可以保持这个不变情况下增加参数

处理

    var url = encodeURI(top.server+"/assetDetailsQueryAll/exportDetailViewListPeriodName?"+ postStr);
    $.ajax({
      url:  url,
      type: 'post',
      dataType: "JSON",
        data: {
            amsRemark:amsModuleRemark
        }
    })