情景:

域名A:http://www.sharefamily.net

域名B:http://member.sharefamily.net

域名A要通过ajax,调用域名B的数据,这样就会出现ajax跨域名请求的问题。

如果你是使用了jQuery,那么就很好处理了,将ajax的dataType设置为jsonp就可以了。

域名A的js代码原来是:

        jQuery.ajax({
		url: 'http://member.sharefamily.net',
		type: 'get',
		dataType: 'json',
		success: function (rs) {
			//其它逻辑
		}
	});

修改为:

        jQuery.ajax({
		url: 'http://member.sharefamily.net',
		type: 'get',
		dataType: 'jsonp', //注意这里,主要使用 jsonp 这个方式
		success: function (rs) {
			//其它逻辑
		}
	});

 

如果域名B的后端程序原来输出的是json值,那么也要处理一下,如以下 PHP 代码:

        //存在$_GET['callback'],代表是跨域请求
        if (!empty($_GET['callback']))
        {
            echo $_GET['callback'] . '('.json_encode($rs) . ')';
        }
        else
        {
            echo json_encode($rs);
        }

  

Have fun with jQuery!

相关文章:

  • 2022-01-01
  • 2021-07-03
  • 2021-12-09
  • 2022-02-23
  • 2021-12-26
  • 2021-10-04
猜你喜欢
  • 2021-12-29
  • 2021-09-09
  • 2021-09-05
  • 2021-07-20
  • 2021-12-29
相关资源
相似解决方案