Javascript 从用户输入将原始JSON输入到JSON对象中
因此,我在javscript中有以下对象作为JSON对象发送:Javascript 从用户输入将原始JSON输入到JSON对象中,javascript,json,Javascript,Json,因此,我在javscript中有以下对象作为JSON对象发送: var authMessage = { MessageType: "authRequest", Payload: {"ClientAuthString": "abcdefg"} } ws.send(JSON.stringify(authMessage)) 这段代码非常有效,完全符合我的需要。。。现在我想接受用户输入(通过web表单)来生成这个对象。我似乎无法用javascript实现这一点 mess
var authMessage = {
MessageType: "authRequest",
Payload: {"ClientAuthString": "abcdefg"}
}
ws.send(JSON.stringify(authMessage))
这段代码非常有效,完全符合我的需要。。。现在我想接受用户输入(通过web表单)来生成这个对象。我似乎无法用javascript实现这一点
messageType = document.getElementById("messageType").value
payload = document.getElementById("payloadInput").value
获取消息类型可以作为字符串使用,但我希望用户在有效负载中输入原始JSON,然后将其放入javascript对象中。。。大概是这样的:
var message = {
MessageType: messageType,
Payload: payload
}
因此,在输入字段中,用户将输入:
{"ClientAuthString": "eyJhbGuuN0jcY"}
然后我会把这些信息输入并尝试发送。。。然而,这是我在它被严格化后得到的。。我尝试了几种不同的方法,但无法将负载作为JSON格式的对象发送。。。有什么想法吗
{"MessageType":"authRequest","Payload":"{\"ClientAuthString\": \"eyJhbGuuN0jcY\"}"}
使用以下命令创建对象:
var message = {
MessageType: messageType,
Payload: JSON.parse(payload)
}
这将把负载解析为一个对象并创建消息对象,然后您可以将其字符串化。使用以下方法创建该对象
var message = {
MessageType: messageType,
Payload: JSON.parse(payload)
}
这将把你的负载解析成一个对象并创建消息对象,然后你可以将其字符串化。最好的方法是将其解析为json 有效负载:JSON.parse(有效负载)
最好的方法是将其解析为json 有效负载:JSON.parse(有效负载)
想想简单地
JSON。parse
应该完成以下工作:
//DOM输入值
var inputText='{“ClientAuthString”:“eyJhbGuuN0jcY”}';
var消息={
消息类型:“authRequest”,
有效负载:JSON.parse(inputText)
};
控制台日志(消息)
简单地考虑一下JSON。parse应该完成以下工作:
//DOM输入值
var inputText='{“ClientAuthString”:“eyJhbGuuN0jcY”}';
var消息={
消息类型:“authRequest”,
有效负载:JSON.parse(inputText)
};
控制台日志(消息)代码>“原始JSON”。。。比如JSON,对吗?“JSON对象”。。。就像javascript对象,除了它的源代码之外,它与JSON无关,对吗?分享你尝试过的方法!对于我来说,不知道您已经尝试了什么,我建议使用payload=JSON.parse(document.getElementById(“payloadInput”).value)
@tehhowch是的,显然我尝试了所有方法,除了非常明显的方法,谢谢。“原始JSON”。。。比如JSON,对吗?“JSON对象”。。。就像javascript对象,除了它的源代码之外,它与JSON无关,对吗?分享你尝试过的方法!对于我来说,不知道您已经尝试了什么,我建议使用payload=JSON.parse(document.getElementById(“payloadInput”).value)
@tehhowch是的,显然我尝试了所有方法,除了非常明显的方法,谢谢。