javascript - 当 Content-Type 未设置为 "application/json"时,jQuery 无法理解 JSON 响应

标签 javascript jquery json google-app-engine

Google App Engine 服务器正在返回 JSON 字符串以响应 POST:

self.response.headers.add_header("Content-Type", "application/json")       
return self.response.out.write(json_string)

这适用于在 Google App Engine 启动器中运行的本地开发服务器。正在设置 header ,并且 jQuery 代码正在正确解析响应。

但是,在生产中,在 Google 前端(当我部署到生产时),页面会损坏,因为 jQuery 无法正确解析响应。我可以发现本地和生产之间的唯一区别(它们运行相同的代码)是生产的响应忽略我将 Content-Type 设置为“application/json”的尝试。

所以这可能意味着我正在尝试设置非法/非标准的内容类型。但是,它在本地工作,这就是我如何让 jQuery 理解 JSON 字符串。

那么,如何格式化响应以便 jQuery 知道它是 JSON 并正确解析?

最佳答案

只需传入 "json" 作为 AJAX 调用的 dataType 参数,然后,无论内容类型如何,响应都将被视为 json :)

关于javascript - 当 Content-Type 未设置为 "application/json"时,jQuery 无法理解 JSON 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4903752/

相关文章:

javascript - 保护模板免受窃取(又名 HTTRack)

javascript - 更新 'stacked columns' 图表 : update() or setData()? 上的 highcharts.js 数据

javascript - 带有 Javascript 的维基百科 API 的访问控制允许来源

javascript - 处理 React 中随机延迟的 promise

javascript - 使用 JavaScript 绘制 HTML 表格 : This web page has not been found

javascript - 如果不是使用 Javascript 或 jquery 的电子邮件地址,请清除输入

javascript - 计算特定 div 中表中的可见行数

ios - 给定 JSON 对象的 NSArray,如何在 NSDictionary 中存储同一个键的多个值?

java - 能够使用 jackson 循环从 json 响应返回的每个用户

javascript - SocketIO 数据到 VueJS