微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ajax跨域的解决办法

应用场景:

如有两个web系统,如分别为192.168.0.120和192.168.0.190; 现在192.168.0.120要向192.168.0.190的站请求数据,这时用ajax请求不到的;解决办法就用ajax的JSONP方式。

示例环境:

perl5.20 jquery2.1.4 apache2.4.16 win10


下面是详细代码

ajax请求代码

function ajaxSend()
{			
	\$.ajax({ 
		url:"http://192.168.0.190/cgi/test2.cgi",dataType: "jsonp",jsonpCallback:"mycallback",success: function(data){ 
			if ( data.error == null ){ 
				 
			   }else { }                       
		},error:function(req,status,obj){},complete: function(xh){} 
	}); 
}	


test2.cgi (perl)
#!../perl/bin/perl.exe

use strict;
use CGI;
my $q = CGI->new;
print $q->header(
       -type    => 'text/javascript+json',-charset => 'utf-8',);

my $jsonp = 'mycallback';

my $result = "{\"status\":\"1\",\"result\":{\"next_url\":\"下一页的地址\",\"content\":\"本页展示数据\"}} ";
print( "$jsonp(" . $result . ");\n" );

1;

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐