0
我有一個REST API正在運行,並且我正在使用JQuery向其發佈一些數據。使用JQuery提交從REST API不起作用
這是我的jQuery代碼的樣子:
$(document).ready(function() {
$('#login-form').submit(function() {
var user = $('#uname').val();
var pass = $('#pwd').val();
alert('username = ' + user);
alert('password = ' + pass);
var JSONObject = { 'userName': user, 'password': pass };
var jsonData = JSON.parse(JSONObject);
$.ajax({
url: 'http://127.0.0.1:8080/user/login',
method: 'POST',
data: { userName: user, password: pass },
dataType: 'JSON',
contentType: 'application/json',
success: function (data, status, jqXHR) {
//Do something
console.log('data = ' + data);
},
error: function (jqXHR, status, errorThrown) {
alert('error ' + errorThrown);
}
});
});
});
然而,這段代碼是無法訪問的API。我沒有在服務器日誌中看到預期的消息。 當點擊表單的Submit按鈕時,瀏覽器會重新加載,並在url中顯示錶單輸入。就這些。
我的API是用Java寫的,這是相關的方法。
@RequestMapping(value = "/user/login", method = RequestMethod.POST)
public ResponseEntity<User> logUser(@RequestBody User user){
User loggedUser = loginService.authenticateUser(user);
if(loggedUser != null){
System.out.println("User found");
return new ResponseEntity<User>(loggedUser, HttpStatus.ACCEPTED);
}else{
//user does not exsits
System.out.println("User not found");
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
}
}
我真的不明白什麼是錯的。沒有顯示任何錯誤。有人能指出我爲什麼發生這種情況,以及如何解決這個問題。