Ajaxを使用してPUTリクエストを送信したいとします。私は必要な情報を要求します:newNavigation。Ajaxを使用したPUTリクエスト(Spring処理中)
PUT要求:
var newNavigation;
var newInputNavigation = document.getElementById('newInputNavigation');
newNavigation = newInputNavigation.value;
function editNavigation() {
var prefix = '/airline/';
$.ajax({
type: 'PUT',
url: prefix +'flights/' + idAction.replace('edit',''),
data: {
navigation: newNavigation
},
success: function(receive) {
$("#adminTable").empty();
$("#informationP").replaceWith(receive);
$("#hiddenLi").removeAttr('style');
},
error: function() {
alert('Error edited flight');
}
});
}
コントローラー:
private final String prefix = "/airline/";
@RequestMapping(value = prefix + "/flights/{id}", method = RequestMethod.PUT)
@ResponseBody
public String updateFlight(@PathVariable("id") String id, @RequestParam("navigation") String navigation) {
String returnText = "Flight edited successful";
String str1 = navigation;
String str2 = id;
return returnText;
}
エラー:
PUT http://localhost:8080/airline/flights/11 400()
質問:
どのようにPUTリクエストを必要なデータ(newNavigation)で送信しますか?
Springコントローラでのデータ(newNavigation)の取得方法は?
EDIT:
追加さNavigationDTO:
public class NavigationDTO implements Serializable{
public String navigation;
public NavigationDTO() {
super();
}
}
変更コントローラ:
@RequestMapping(value = prefix + "/flights/{id}", method = RequestMethod.PUT)
@ResponseBody
public String updateFlight(@PathVariable("id") String id, @RequestBody NavigationDTO navigation) {
String returnText = "Flight edited successful";
String str1 = navigation.navigation;
String str2 = id;
return returnText;
}
エラー:
PUT http://localhost:8080/airline/flights/8 415()
オブジェクト「ナビゲーション」からナビゲーション属性にアクセスすることができますか? –
@AmerQarabsaプライベート最終文字列プレフィックス= "/ airline /"; – bsuart