分类分类
更新时间:2026-05-10 23:59:32作者:fang
通过XMLHTTPRquest请求不同域上的数据,原来js跨域访问是后台有个处理路径“/test”的函数。下面把具体解决方案介绍如下。
后台处理路径“/test”的函数:
代码如下:
//路径处理
app.get("/test",user.test);
//处理函数
exports.test=function(req,res){
res.end("alert('JS跨域访问')");
};
外部有一个网页需要访问路径”/test“下的内容,则可以通过JS脚本文件来跨域访问:
代码如下:
//处理函数
<script>
function method(data){
console.log(data);
}
</script>
//跨域访问
<script src="http://localhost:3000/test"></script>
结果会在当前的网页中弹出一个窗口:

jQuery中JSONP跨域访问的实现:
同样在后台有一个处理路径“/test”的函数:
//路径处理
app.get("/test",user.test);
//处理函数
exports.test=function(req,res){
res.end("method("+JSON.stringify({mes:"跨域访问成功!"})+")");
};
外部有一个网页需要访问路径”/test“下的内容,通过JSONP来实现跨域访问:
//引入跨域访问中的jQuery函数库
<script src="http://localhost:3000/js/jquery-1.9.1.min.js"></script>
//jQuery中JSONP跨域访问
<script>
$.ajax({
url:"http://localhost:3000/test",
type:"get",
success:function(data){
$("body").append(data.mes);
},
dataType:"jsonp",
jsonpCallback:"method"
});
</script>
结果会在当前的网页中显示如下信息:

通过上述代码我们可以看出JSOPN跨域访问和原始的JS跨域访问的不同之处是JSONP不需要写处理跨域访问的函数(例如上述方法中使用的method函数),在JSONP跨域访问时会自动帮我们创建处理跨域访问的函数。
JSONP跨域访问的优点:
1.它不像XMLHTTPRequest对象实现的AJAX请求那样受到同源策略的限制;
2.它的兼容性更好,不需要XMLHTTPRequest或ActiveX的支持;
3.在请求完成后可以通过调用callback的方法传回结果。
JSONP跨域访问的缺点:
1.它只支持GET请求而不支持POST及其他类型的请求;
2.它只支持跨域HTTP请求这种情况,不能解决不同域的两个页面之间如何进行JavaScript调用的问题。
相关
修真情缘角色扮演303.33 MBv1.0.02026-05-10
下载我的小独角兽女孩休闲益智380.89 MBv1.0.232026-05-10
下载超级种田男孩手机版经营养成1.31Gv1.0.92026-05-10
下载不必要的实验冒险游戏64.9 MBv1.1.592026-05-10
下载军师联盟策略游戏163.2 MBv0.0.12026-05-10
下载翻天喜地凑大钱手机版休闲益智138.72 MBv1.0.92026-05-10
下载东离剑游纪手游动作射击1.6Gv1.4.22026-05-10
下载天猫养车商家版App学习办公74.95 MBv0.6.12026-05-10
下载掌上命运方舟App手游辅助137.48 MBv1.9.12026-05-10
下载退役军人服务APP生活服务67.16 MBv1.2.52026-05-10
下载屯漫漫画APP资讯阅读23.06 MBv2.0.32026-05-10
下载蛋仔派对蛋壳App手游辅助185.73 MBv0.0.22026-05-10
下载









