博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于AngularJS中$http跨域 与 nodejs接收跨域请求(使用express-session,body-parser)的设置...
阅读量:4582 次
发布时间:2019-06-09

本文共 1363 字,大约阅读时间需要 4 分钟。

1.跨域的服务端设置:

使用express挂载跨域响应中间件

app.all("*", function (req,res,next) {
let allowedOrigins = [ "http://192.168.1.101:3000", "http://105.123.123.123:3000" ];  // 这里是允许跨域的的domain列表 let origin = req.headers.origin; if(allowedOrigins.indexOf(origin) > -1){
res.setHeader('Access-Control-Allow-Origin', origin); } res.header('Access-Control-Allow-Credentials', true);// Allow Cookie res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept"); res.header("Access-Control-Allow-Methods", "PUT,POST,GET,DELETE,OPTIONS"); next(); });

2.$http的general用法:

$http({    url:"http://localhost:3005/login",    method:"POST",    withCredentials: true,    // 允许发送Cookie    headers: {        'Content-Type': 'application/x-www-form-urlencoded'    },    data: {        username:$scope.username,        password:$scope.password    },    // 使数据匹配body-parser的形式,否则会解析错误拿不到数据,如果不用这一个方法,数据会被解析成一个{key:value}的json,key是整个数据的字符串,而value是空.    transformRequest: function(obj) {        var str = [];        for(var p in obj){            str.push(encodeURIComponent(p) + '=' + encodeURIComponent(obj[p]));        }        return str.join('&');    }}).success(function (data) {    if (data.status == 1) {        alert("登录失败");    } else {        alert("登录成功");    }});

 

转载于:https://www.cnblogs.com/Totooria-Hyperion/p/5565319.html

你可能感兴趣的文章
git常用操作
查看>>
锋利的jq第三天
查看>>
CSS控制文本内容固定行行显示,超出部分“...”
查看>>
FormsAuthentication使用指南
查看>>
解压缩文件
查看>>
Maven打包附加配置文件
查看>>
面经二
查看>>
使用css实现特殊标志或图形
查看>>
利用接口实现自定义监听事件以及观察者模式
查看>>
Android------>TableLayout表格布局方式
查看>>
Tesnsorflow命名空间与变量管理参数reuse
查看>>
apply、call、bind有什么区别?
查看>>
linq 实现group by 不使用group关键字 等同lambad表达式中的group join 查询一对多关系...
查看>>
IP地址及子网掩码计算
查看>>
akka actor中的基本概念(学习小结)
查看>>
Gao the Grid ZOJ 3647 数三角形
查看>>
周总结
查看>>
进程与线程的区别+进程&线程的通信方式
查看>>
【SQL Server CE2.0】打开加密的数据库(源代码)
查看>>
linux进程管理命令
查看>>