我是其他服務的新手。我正在嘗試創建一個接受來自客戶端的json字符串的服務。我在使用JQuery調用此服務時遇到了405錯誤。下面是ws的Java代碼:爲什麼我在執行POST請求時收不到405方法
這是我向JERSEY POST RESTFUL Webservice發佈請求的方式。
var orderinfo = {'ordersplitjson': ordersplitjson, 'customer_id': cust_id , 'homedelivery': homedelivery, 'seatnum' :seatnum , 'locationname':location_nam , 'rownum':rownum};
var json_data = JSON.stringify(orderinfo);
var ajaxcallquery = $.ajax({
type:'POST',
dataType: 'jsonp',
data: json_data,
contentType: "application/json; charset=utf-8",
url:url+'/OMS/oms1/orderinsertservice',
jsonpCallback:'jsonCallback',
jsonp:false,
success: function(response)
{
},
error: function(jqxhr, status, errorMsg) {
alert('Failed! ' + errorMsg);
}
});
public class OrdersInsertService
{
@POST
@Consumes(MediaType.APPLICATION_JSON)
@Produces("application/json")
public String getData(OrderInfo order,@Context HttpServletResponse serverResponse)
throws JSONException
{
serverResponse.addHeader("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE, OPTIONS, HEAD");
serverResponse.addHeader("Access-Control-Allow-Credentials", "true");
serverResponse.addHeader("Access-Control-Allow-Origin", "*");
serverResponse.addHeader("Access-Control-Allow-Headers", "Content-Type,X-Requested-With");
serverResponse.addHeader("Access-Control-Max-Age", "60");
}
}
package com.util;
public class OrderInfo {
String ordersplitjson;
public String getOrdersplitjson() {
return ordersplitjson;
}
public void setOrdersplitjson(String ordersplitjson) {
this.ordersplitjson = ordersplitjson;
}
public String getCustomer_id() {
return customer_id;
}
public void setCustomer_id(String customer_id) {
this.customer_id = customer_id;
}
public String getHomedelivery() {
return homedelivery;
}
public void setHomedelivery(String homedelivery) {
this.homedelivery = homedelivery;
}
public String getSeatnum() {
return seatnum;
}
public void setSeatnum(String seatnum) {
this.seatnum = seatnum;
}
public String getLocationname() {
return locationname;
}
public void setLocationname(String locationname) {
this.locationname = locationname;
}
public String getRownum() {
return rownum;
}
public void setRownum(String rownum) {
this.rownum = rownum;
}
String customer_id;
String homedelivery;
String seatnum;
String locationname;
String rownum;
}
有誰請讓我知道如何解決這一問題
我用的澤西1,當我用你的類的給我一個compiltion錯誤在Eclipse作爲hwon在畫面
我剛剛取代jsonp到json,我越來越沒有'Access-Control-Allow-Origin'標題是壓力請求所請求的資源。因此不允許原產地'null'訪問。 – Pawan
擺脫與jsonp相關的一切。 jsonp會自動進行GET(因此是405)。與POST的jsonp是不好的。 –
當我修改jsonp到json沒有'Access-Control-Allow-Origin'標題出現在請求的資源上。因此不允許原產地'null'訪問。 – Pawan