zoukankan      html  css  js  c++  java
  • Angularjs 跨域post数据到springmvc

    先贴网上己有解决方案链接:

    http://www.tuicool.com/articles/umymmqY  (讲的是springmvc怎么做才可以跨域)

    http://my.oschina.net/zchuanzhao/blog/515059  (讲的是怎么使用Angularjs 将post数据提交到服务端)

    在结合上面两篇文章之后,我在做的时候发现,angularjs在提交post时有些问题。必须要这么写才行。

     return $http({
                method:'POST',
                url:apibaseurl+'/**/checkUser',
                data:'name='+credentials.name+'&pwd='+credentials.password,
                //contentType: 'application/json',  'application/x-www-form-urlencoded'
                headers:{
                    'Content-Type': 'application/x-www-form-urlencoded'
                }
    
            }).success(function(data){
                return data;
            }).error(function(data){
                return null;
            })

    即post的数据不能以json的形式发过去,若以json的行式发的话,做报403之类的异常,改变contenttype的类型为application/json时,就会引发不能跨域异常。最后将post的数据改成字符串的形式才通过。

    下面贴下服务端取数据的代码

    @RequestMapping(value="/checkUser")
        public User checkUser(HttpServletRequest request){
            
            String reqName=StringHelper.ConvertString(request.getParameter("name"),"");// request.getParameter("name");
            String reqPwd=StringHelper.ConvertString(request.getParameter("pwd"),"");
            
            return CheckUserLogin(reqName, reqPwd);
        }

    小节下:

    服务端,将按照第一个链接内的内容,创建一个 filter,重写其 中方法,在web.xml中加入这个过滤器。

    客户端,在做请求时加入“

    headers:{
                    'Content-Type': 'application/x-www-form-urlencoded'
                }

    这个headers参数很重要,少了就不行。

     【转载请标注,From http://www.cnblogs.com/jackicalSong/】 

    注:听说跟浏览器版本有点关系,网上说这种跨域是H5的特性,移动端智能机应该都支持。

  • 相关阅读:
    Rx 键值观察KVO的使用
    js总结(6.1)获取DOM的各个属性 补充部分
    js总结(8)轮播小总结
    js总结 (7)事件
    js总结 (书本)《JavaScript DOM编程艺术 第2版》笔记
    js总结 (6) DOM操作 节点元素 遍历树
    css 补充之 checked应用 制作选中效果,以及z-index和position-fixed transfrom 之间层级关系
    js总结 (4)JavaScript高级程序设计
    js总结 (5)原型 原型链,,,继承的问题
    Css权威指南总结
  • 原文地址:https://www.cnblogs.com/jackicalSong/p/5407940.html
Copyright © 2011-2022 走看看