前端发起ajax请求时,参数名为什么会带%5B%5D呢?

crossbet 2018-05-28 05:12:13
我在前端发起了一个嵌套的ajax请求,内容如下:
$.ajax({
url: '/OA/GetBugModuleResolver',
type: 'get',
async: false,
cache: false,
dataType: "json",
contentType: "application/json; charset=utf-8",
data: { "Project": self.trtcViewModel.project(), "ModuleName": self.trtcViewModel.module() }
}).success(function (data) {
console.log(data);
self.trtcViewModel.assignnerID(data);
$.ajax({
url: '/Jira/GetUserNameByID',
type: 'get',
async: true,
cache: false,
dataType: "json",
contentType: "application/json; charset=utf-8",
data: { "UserID": data }
}).success(function (data2) {
self.trtcViewModel.assignner(data2);
});
});
第一个请求正常
Request URL: http://localhost:4882/OA/GetBugModuleResolver?Project=15c39c19cdb26751a5a538649af911d3&ModuleName=16324efe04708110ea6f7334a7095e
第二个请求的UserID后面莫名其妙带了个%5B%5D,导致后台怎么都取不到这个参数值
Request URL: http://localhost:4882/Jira/GetUserNameByID?UserID%5B%5D=1985&_=1527497684231

求解
...全文
3837 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
crossbet 2018-05-28
  • 打赏
  • 举报
回复
引用 1 楼 superwfei 的回复:
%5b%5d是[],看看你在发ajax请求前,data的值是否有改动
确实是这个问题,我第一个ajax返回的是一个list,用data[0]赋值就可以传过去了 奇怪的是这个括号没有放在参数值那里,倒是放在了参数名的位置,让我找了半天 非常感谢!
文盲老顾 2018-05-28
  • 打赏
  • 举报
回复
%5b%5d是[],看看你在发ajax请求前,data的值是否有改动

87,907

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧