正在从 HTTP 响应中解析 JSON
Parsing JSON from HTTP response
假设我有一个 URL http://example.com/product/12345 其中包含代码行。 URL 是电子商务网站的产品页面,该页面内有一个 "Add to Cart" 按钮。
单击该按钮后,它会发送有关已查看产品的 HTTP POST 和 returns 以下 JSON 响应:
{
"products": [
{
"id": 722,
"link": "http://example.com/product/123123",
"image_link": "http://example.com/prodcut/image/thumb.jpg",
"image_width": "45",
"image_height": "45",
"quantity": 1,
.... and so on...
我想知道是否可以在不知道哪个函数调用它的情况下解析响应,因为:
- 该页面由多个视图组成(从不同的控制器呈现)
我试过做这样的事情:
console.log(response.products), 或;
console.log(产品)
但都给出 "undefined" 错误...
谁能帮我解决这个问题?非常感谢。
如果有帮助的话,我可以为您指明确切的文件:
- /themes/yourtheme/js/modules/blockcart/ajax-cart.js 如果不存在看/modules/blockcart/ajax-cart.js
看注释行下面的代码“//发送 ajax 请求到服务器”
- 和JSON答案形成于Smarty模板文件
blockcart-json.tpl
中/themes/yourtheme/modules/blockcart/
或/modules/blockcart/
所以,如果您将 console.log 放在 ajax-cart.js 中
success: function(jsonData,textStatus,jqXHR)
{
console.log(jsonData.products); // not parsed json here of course
...
},
应该可以。
使用 JSON.parse(response) 转换为 Json 对象并再次转换为字符串使用 JSON.stringify (回复)
假设我有一个 URL http://example.com/product/12345 其中包含代码行。 URL 是电子商务网站的产品页面,该页面内有一个 "Add to Cart" 按钮。
单击该按钮后,它会发送有关已查看产品的 HTTP POST 和 returns 以下 JSON 响应:
{
"products": [
{
"id": 722,
"link": "http://example.com/product/123123",
"image_link": "http://example.com/prodcut/image/thumb.jpg",
"image_width": "45",
"image_height": "45",
"quantity": 1,
.... and so on...
我想知道是否可以在不知道哪个函数调用它的情况下解析响应,因为:
- 该页面由多个视图组成(从不同的控制器呈现)
我试过做这样的事情:
console.log(response.products), 或; console.log(产品)
但都给出 "undefined" 错误...
谁能帮我解决这个问题?非常感谢。
如果有帮助的话,我可以为您指明确切的文件:
- /themes/yourtheme/js/modules/blockcart/ajax-cart.js 如果不存在看/modules/blockcart/ajax-cart.js
看注释行下面的代码“//发送 ajax 请求到服务器”
- 和JSON答案形成于Smarty模板文件
blockcart-json.tpl
中/themes/yourtheme/modules/blockcart/
或/modules/blockcart/
所以,如果您将 console.log 放在 ajax-cart.js 中
success: function(jsonData,textStatus,jqXHR)
{
console.log(jsonData.products); // not parsed json here of course
...
},
应该可以。
使用 JSON.parse(response) 转换为 Json 对象并再次转换为字符串使用 JSON.stringify (回复)