我无法弄清楚:-(我的客户正在做ajax httppost,我需要发送以下内容:
private doSaveQuery(queryName: string): void {
const info = {};
info['userName'] = 'admin';
info['userQueryName'] = queryName;
...
字符串化后,将其转换为:
{"userName":"admin",
"userQueryName":{"queryName":"MyName"}
}
为什么使用我的变量名“ queryName”并将其作为键添加到我的值?
我该怎么办?
{"userName":"admin",
"userQueryName":"MyName"
}
我知道这很简单,所以请原谅我的无知:-)
谢谢!
最佳答案
在编码对象时,看起来queryName
实际上是看起来像{queryName: 'MyName'}
的对象。
要解决此问题,您应确保queryName
只是字符串MyName
。
info['userQueryName'] = 'MyName'
用词来说,
queryName
不是您想的那样。当前实现的示例:
const queryName = {queryName: "MyName"}
const info = {
userName: "admin",
userQueryName: queryName
}
console.log(JSON.stringify(info))
您应该将
queryName
更改为仅字符串:const queryName = "MyName"
const info = {
userName: "admin",
userQueryName: queryName
}
console.log(JSON.stringify(info))
如果不能这样做,则可以从该属性构建信息:
const queryName = {queryName: "MyName"}
const info = {
userName: "admin",
userQueryName: queryName.queryName
}
console.log(JSON.stringify(info))