angular2 跨域post请求到springMVC

2 篇文章 0 订阅
1 篇文章 0 订阅

1.angular使用json格式上传参数,而springMVC使用x-www-form-urlencoded格式获取参数。

采用修改前端的方法进行兼容,body修改为 xx=aa&yy=bb的形式,加入http头 application/x-www-form-urlencoded

const body = 'userId=' + this.userId + '&token=' + this.token;
this.http.post(this.uriService.baseUrl + this.uriService.loginByToken, body, {
  headers: new HttpHeaders().set('Content-Type', 'application/x-www-form-urlencoded'),
})

2.跨域请求中,tomcat会因为 Access-Control-Allow-Origin选项,没有正确设置出现403的情况,后台没有任何日志产生,采用nginx转发请求到tomcat,nginx不需要加入http文件头处理,在tomcat侧处理,采用官方推荐的方法,在web.xml添加filter,其中org.apache.catalina.filters.CorsFilter不需要添加maven依赖。

<filter>
    <filter-name>CorsFilter</filter-name>
    <filter-class>org.apache.catalina.filters.CorsFilter</filter-class>
</filter>
<filter-mapping>
    <filter-name>CorsFilter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值