XMZ_JAVA
天_道_酬_勤
2017-01-06 07:39

ajax连接失败,服务器端用的是springmvc+mybatis,纠结半天了,怀疑是浏览器版本问题

5
  • spring
  • ajax

前端代码如下
function loginAction(){
var name=$('#count').val();
var password=$('#password').val();
if(checkName()+checkPassword()!=2){
return;
}
var parameter={"name":name,"password":password};
$.ajax({
url:'user/login.do',
type:'POST',
data:parameter,
dataType:'json',
success:function(result){
if(result.state==0){
location.href='edit.html';
return;
}else if(result.state==2){
//用户名错误
$('#count-msg').html(result.message);
return;
}else if(result.state==3){
//密码错误
$('#password-msg').html(result.message);
return;
}
alert(result.message);
},
error:function(){
alert('AJAX传输失败');
}
});
}

后端代码如下

@Controller
@RequestMapping("/user")
public class UserController {
@Resource
private UserService userService;
@RequestMapping("/login.do")
@ResponseBody
public JsonResult login(String name,String password){
try {
User user=userService.login(name, password);
return new JsonResult(user);
} catch (UserNameException e) {
e.printStackTrace();
return new JsonResult(3,e);
}catch (PasswordException e) {
e.printStackTrace();
return new JsonResult(2,e);
}
catch (Exception e) {
e.printStackTrace();
return new JsonResult(e);
}
}

}

报错信息如下
XMLHttpRequest cannot load file:///D:/tts9/workspace/note2/src/main/webapp/user/login.do.
Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https, chrome-extension-resource.send @ jquery-1.11.3.js:9664

网上搜索出来说是ajax跨域,需要用jsonp,但是上次做过相同的项目,上次都可以成功,这次ajax无缘由的就连接失败了,感觉很奇怪。
另外,jsonp该怎么使用呢。

  • 点赞
  • 回答
  • 收藏
  • 复制链接分享

6条回答