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的特性,移动端智能机应该都支持。
Angularjs 跨域post数据到springmvc的更多相关文章
- 关于试用jquery的jsonp实现ajax跨域请求数据的问题
我们在开发过程中遇到要获取另一个系统数据时,就造成跨域问题,这就是下文要说的解决办法: 先我们熟悉下json和jsonp的区别: 使用AJAX就会不可避免的面临两个问题,第一个是AJAX以何种格式来交 ...
- JavaScript跨域提交数据
1.通过jsonp跨域 场景:假设前台有JS方法"crossJS", 1.1发送请求http://www.xxx.com/?callback=crossJS.(创建一个scr ...
- HTML5 postMessage 跨域交换数据
前言 之前简单讲解了利用script标签(jsonp)以及iframe标签(window.name.location.hash)来跨域交换数据,今天我们来学习一下HTML5的api,利用postMes ...
- jQuery之ajax的跨域获取数据
如果获取的数据文件存放在远程服务器上(域名不同,也就是跨域获取数据),则需要使用jsonp类型.使用这种类型的话,会创建一个查询字符串参数 callback=? ,这个参数会加在请求的URL后面.服务 ...
- 利用location.hash+iframe跨域获取数据详解
前言 如果看懂了前文利用window.name+iframe跨域获取数据,那么此文也就很好理解了.一样都是动态插入一个iframe,然后把iframe的src指向服务端地址,而服务端同样都是输出一段j ...
- 利用window.name+iframe跨域获取数据详解
详解 前文提到用jsonp的方式来跨域获取数据,本文为大家介绍下如何利用window.name+iframe跨域获取数据. 首先我们要简单了解下window.name和iframe的相关知识.ifra ...
- XMLHTTPRequest对象不能跨域获取数据?!
写了一小段代码,是用XMLHTTPRequest对象来获取数据的,在本地服务器中,运行的很顺利,但是转向实际服务器(实质上就是转向http://gumball.wickedlysmart.com获取一 ...
- 使用JSONP跨域请求数据
下面代码,可以使用JSONP进行跨域请求数据,Insus.NET记录以下,以备忘记.
- 使用jQuery-AJAX–读取获得跨域JSONP数据的示例
在项目开发中,如果在同一个域名下就不存在跨域情况,使用$.getJSON()即可实现.但是需要跨域请求其他域名下面的Json数据就需要JSONP的方式去请求,跨域写法和getJSON有差异.如下: ...
随机推荐
- url规范化:解决从baidu.com到www.baidu.com的
通过 301重定向可以实现 把www.baidu.com和baidu.com合并,并把之前的域名也一并合并. 有两种实现方法: 第一种方法是判断nginx核心变量host(别名功能): server ...
- Jmeter入门13 jmeter发送application/octet-stream二进制流数据
http接口请求header里面 content-type: application/octet-stream (二进制流数据),如何用jmeter发送请求? 1 添加http请求头 2 http请 ...
- 【转载】#470 Define Your Own Custom Attribute
You can use predefined attributes to attach metadata to type members. You can also define a custom a ...
- python核心编程中网络爬虫的例子
#!/usr/bin/env python import cStringIO # import formatter # from htmllib import HTMLParser # We use ...
- C语言 字符串的声明与使用
// 字符串的定义和初始化 void test() { // "mj" char s[] = {'m', 'j', '\0'}; // 字符串"mj" ] = ...
- 如何使用react-redux
之前学习了react,也学习了redux,那么react-redux是什么呢?实际上他是一个第三方的模块,他可以帮助我们在react之中更加方便的使用redux.首先如果想用react-redux,先 ...
- Android学习笔记_5_文件操作
1.Activity提供了openFileOutput()方法可以用于把数据输出到文件中,具体的实现过程与在J2SE环境中保存数据到文件中是一样的. package com.example.servi ...
- 自己做的HTML
<html> <body background="http://img1.imgtn.bdimg.com/it/u=821335874,2927998559&fm= ...
- Es6的那些事
现在看招聘网站上的要求,作为前端er~都要熟悉甚至精通(滑稽脸)es6,项目中也经常用,啥let,const,尤其是用react的同学,肯定对解构赋值不会陌生,今天逛淘宝前端的博客,看到一篇名为Es6 ...
- 配置隐私协议 - iOS
根据苹果隐私协议新规的推出,要求所有应用包含隐私保护协议,故为此在 App 中添加了如下隐私协议模块. 首次安装 App 的情况下默认调用隐私协议模块展示相关信息一次,当用户点击同意按钮后,从此不再执 ...