javascript - 使用 javascript 的 GoogleAppEngine JSON 对象

标签 javascript json google-app-engine

我想创建一个包含数组的字典并使用 jquery 的 ajax 请求将它发送到 GAE。 类似 - {'a':'text', 'b':'othertext','c':['texta','textb']} 我手动创建的。 我可以在 GAE 上使用 self.request.get 接收和处理 a 和 b,但不能接收和处理 c。

有没有其他方法可以在js中创建JSON对象?请建议此方法有什么问题。

最佳答案

您并不是真的向服务器发送 JSON。当您将对象传递给 jQuery.ajax(或 get/post 包装器)时,它将被序列化为 GET 或 POST 变量,而不是作为 JSON 发送,因此您的对象将被转换成如下内容:

a=text&b=othertext&c[]=texta&c[]=textb

如果您想将整个对象作为 JSON 传递,您可以通过调用 JSON.stringify 自行转换它(对于不支持 的浏览器,您需要包含 json2.js >JSON 原生对象)。然后你可以用你想要的任何名称将 JSON 编码的字符串包装在 map 中:

jQuery.post(url, { json: JSON.stringify({a:'text', ...}) }, ...);

在服务器端,您可以通过调用self.request.get("json") 来访问JSON 文本。然后您必须解析 JSON 字符串以提取值。我不太了解 Python,但显然你只需要导入 django.utils.simplejson 并调用 simplejson.loads(json)

关于javascript - 使用 javascript 的 GoogleAppEngine JSON 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3385865/

相关文章:

python - 从任务队列中按名称获取任务

json - 如何使用ARM模板创建多个服务总线主题?

python - 在 Google App Engine 上使用 Django 限制对 Shopify API 的 API 调用速率

javascript - 将get/set函数附加到js中的对象属性

javascript - 如何从数组和已存在的对象创建新对象?

php - jQuery JSON 问题

mysql - 如何在没有 URL 的情况下使用 JSON 编码数组?

java - 如何迁移到 Java App Engine 中的并发请求?

javascript - 从Firefox插件向页面注入(inject)js是否可以绕过CSP?

javascript - 主干-合并: true - option not changing UI