ajax跨域获得JSON数据的问题? 400 报错 我在tuan.abc.com下边发起一个异步的ajax 请求 请求的URL 是以 abc.com 开头的,得不到 response回去的数据了,请问有什么别的方法么,,我按着百度上的方法试了一试 http://blog.csdn.net/ajun_studio/article/details/6633065,但是还是不行,大家如果有解决的办法,求教。
相同根域的只需要设置document.domain,就可以通过iframe传递数据######能不能说得详细点呀?######在页面上建立一个隐藏的iframe,src指向外域。在iframe的load事件里面进行处理。######
就是用文章中介绍的。jsonp。
我给个例子给你kan
function islogin(){ var base_url = "http://www.abc.com/"; var weidenglu = '<a | <a $.getJSON(base_url+'user/islogin?jsoncallback=?',{x:Math.random()},function(data){ if(data.success){ var htm = '欢迎您,<a class="fb accepted">'+data.username+'</a><a $("#user_info").html(htm); }else{ $("#user_info").html(weidenglu); } }); }
看以上代码,
url中的jsoncallbank参数是必须的。应为jquery会返回函数ID传入,
你在看下一php代码就知道了。
public function islogin(){ $jsoncallback = $_GET['jsoncallback']; if(!empty($_SESSION['userinfo']['username'])){ //有昵称显示昵称,未设置昵称显示用户名 $username = !empty($_SESSION['userinfo']['nick_name'])?$_SESSION['userinfo']['nick_name']:$_SESSION['userinfo']['username']; die($jsoncallback . "(" . json_encode(array('success' => true, 'username' =>$username)) . ")"); } die($jsoncallback . "(" . json_encode(array('success' => false, 'msg' =>"未登录")) . ")"); }
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。