javascript - 解析JSON数据格式时遇到AJAX跨域问题,怎么解决?
高洛峰
高洛峰 2017-04-10 18:08:16
[JavaScript讨论组]

解析JSON数据格式时遇到AJAX跨域问题,怎么解决?

之前做好了JSON格式:

{"status":200,"message":"查询成功","data":[{"Title":"购买须知","PicUrl":"https://www.ihuale.com:9999/ShopImg/201601/购买须知_2016012.jpg","ActUrl":"https://www.ihuale.com:9999/Activitys?ActId=8a5e1cbc-4843-40a5-a82e-aff291d608ab"},{"Title":"专享花束","PicUrl":"https://www.ihuale.com:9999/ShopImg/201602/24.8最新_20160228.jpg","ActUrl":"https://www.ihuale.com:9999/Activitys?ActId=531b5089-e6f7-4921-ae0c-13d5c8a408c7"},{"Title":"养护技巧","PicUrl":"https://www.ihuale.com:9999/ShopImg/201601/养护技巧_2016012.jpg","ActUrl":"https://www.ihuale.com:9999/Activitys?ActId=67ff92fc-e199-42ad-8340-51f22af30a08"}]}

下面写的javascript:

/* 解析json */
$.ajax({
    cache: false,
    async: true,
    type: "get",
    url: "https://www.ihuale.com:9999/rest/activity",
    dataType: "json",
    success: function (data) {
        var datas = JSON.parse(data);
        console.log(data);
    },
    error:function(status, message, data) {
        console.log(status);
        console.log(message);
        console.log(data);
    }
});

这样写的输不出来,还不清楚在哪里出问题。请各位老师帮忙指导,谢谢。

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(6)
PHP中文网

直接使用$.ajax需要把json字符串解析成对象,data=$.parseJSON(data);使用$.get或者$.post则不需要

阿神

if都没有 你的else怎么来的 编辑器就不会报错?

PHP中文网

为什么要手动解析。时至今日,这个轮子真的不用自己造。
用log打印一下响应的值,字符串就用json.parse对象就直接用。其实这方法很多的。
当然ajax可以通过设定格式,直接先处理咯,这个过程你看不到。
遍历的话,循环就可以了。

PHP中文网

跨域的话要采用`
jsonp

巴扎黑

dataType是请求的正文格式,你GET请求哪来的正文?

contentType才是响应的,如果响应在协议头中设置了application/json,那么data应该自行解析成json对象。

你是不是解析了两遍?

巴扎黑
试一试:
function callback( data ){
    console.log( data );
}

$.ajax({
    crossDomain: true,
    type:"GET",
    contentType: "application/json; charset=utf-8",
    async:false,
    url: "https://www.ihuale.com:9999/rest/activity",
    dataType: "jsonp",                
    jsonpCallback: 'callback'
});
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号