Ajax.Nodejs.跨域访问

时间:2023-11-23 10:13:08

使用环境:

客户端: jQuery

服务器: Node.js

在通过Ajax调用非本域的链接/接口时, 一般是不能成功的, 就算是同一个IP下不同的端口也被认作跨域访问

解决办法记录如下:

客户端:

发起访问的页面所在地址: http://192.168.6.3/client

访问目标地址:http://192.168.6.3:3000/slogssearchpage

代码(重点是红字部分):

 var url = "http://192.168.6.3:3000/slogssearchpage";
$.ajax({
type: "GET",
url: url,
crossDomain: true,
success: function(v){
$("#divLogs").html(v);
}
});

服务端, 受访地址需要处理:

处理前:

 app.get('/slogssearchpage', function(req, res){
res.render('logspage', {docs: docs});
});

处理后:

app.get('/slogssearchpage', function(req, res){
res.set('Access-Control-Allow-Origin', '*');
res.render('logspage', {docs: docs});
});

done!