【发布时间】:2019-08-29 22:38:29
【问题描述】:
我在我的 C# 代码隐藏中生成了一个包含 json 的字符串,然后我将它发送到前端以在 Javascript 中使用。
我想在 $.getJSON("<%=myJson%>") 这样的函数中使用该 json,但我遇到了一些错误
我已经尝试直接使用字符串,因为 json 是 javascript 代码,但它不起作用。控制台显示
"Uncaught SyntaxError: missing ) after argument list"
然后我尝试了JSON.parse(myJson),但它也不起作用。控制台显示
“未捕获的语法错误:意外的标识符”
这就是我的 Json 字符串在代码隐藏中的样子:
"\"iss\":\"123123123\",\"exp\":123123,\"jti\":\"asdasdasdasd\",\"sub\":\"asdasdasdasd\",\"grants\":{\"identity\":\"John\",\"voice\":{\"incoming\":{\"allow\":true},\"outgoing\":{\"application_sid\":\"asdasdasdasd\"}}}}"
然后当我将它发送到前端的 Javascript 时:
$.getJSON("
"iss":"123123123","exp":123123,"jti":"asdasdasdasd","sub":"asdasdasdasd","grants":{"identity":"John","voice":{"incoming":{"allow":true},"outgoing":{"application_sid":"asdasdasdasd"}}}}")
更新 我在代码隐藏中修复了 json 语法:
"{\"iss\":\"123123123\",\"exp\":123123,\"jti\":\"asdasdasdasd\",\"sub\":\"asdasdasdasd\",\"grants\ ":{\"identity\":\"John\",\"voice\":{\"incoming\":{\"allow\":true},\"outgoing\":{\"application_sid\" :\"asdasdasdasd\"}}}}"现在我在 javascript 中收到此错误:
$.getJSON('{"iss":"123123123","exp":123123,"jti":"asdasdasdasd","sub":"asdasdasdasd","grants":{"identity":"John ","voice":{"incoming":{"allow":true},"outgoing":{"application_sid":"asdasdasdasd"}}}}')
GET http://localhost:.... 400(错误请求)
我认为这是因为这个函数需要一个 url 来访问,但我怎样才能让它读取我的 json 字符串?
【问题讨论】:
-
欢迎来到 Stack Overflow。如果您创建一个说明您的问题的minimal reproducible example,我们可以更快地为您提供帮助。请注意,这不是您的整个项目。它只需要是您从头开始创建的一个小示例,它使用您所询问的概念。请务必阅读我提供的链接以获取有关如何创建此类示例的提示。
-
这不是一个有效的 json 字符串,这是一个最小的例子
{"key":"value"} -
@VelimirTchatchevsky 这就是他要解决的问题。
-
@Barmar 在它周围添加引号也不能使它成为有效的 json,这就是为什么我举一个简单的 json 的例子
object -
哦,我以为他在使用 C# 库来创建 JSON。
标签: javascript json