Tôi đang gửi yêu cầu đăng bài đến một ứng dụng dịch vụ WCF RESTFUL. Tôi có thể gửi thành công yêu cầu POST
thông qua Fiddler.jQuery .ajax() Yêu cầu POST ném 405 (Phương thức không được phép) trên RESTful WCF
Tuy nhiên khi tôi làm điều này thông qua các phương pháp jQuery Ajax hàm trả về sau để Console Chrome Developer:
OPTIONS http://www.example.com/testservice/service1.svc/GetData 405 (Method Not Allowed) jquery.min.js:6
Nhưng sau đó một giây sau khi các bản ghi:
Object {d: "You entered 10"} testpost.html:16
Điều này nói với tôi là jQuery đang gửi yêu cầu OPTIONS
không thành công và sau đó gửi yêu cầu POST
trả về dữ liệu dự kiến.
Mã jQuery của tôi:
$.ajax() {
type: "POST", //GET or POST or PUT or DELETE verb
url: "http://www.example.com/testservice/service1.svc/GetData", // Location of the service
data: '{"value":"10"}', //Data sent to server
contentType:"application/json",
dataType: "json", //Expected data format from server
processdata: false,
success: function (msg) {//On Successfull service call
console.log(msg);
},
error: function (xhr) { console.log(xhr.responseText); } // When Service call fails
});
Tôi đang sử dụng jQuery phiên bản 2.0.2.
Bất kỳ trợ giúp nào về lý do lỗi này xảy ra sẽ là một trợ giúp tuyệt vời.
rồi nó làm cho cảm giác bây giờ. Cảm ơn nhiều. –
would't 'jsonp' cũng thực hiện công việc - miễn là nó được máy chủ hỗ trợ? – ProblemsOfSumit
@Sumit Nếu tất cả những gì bạn làm là 'GET', thì ** JSONP ** có thể là một tùy chọn. Tuy nhiên, JSONP là một giải pháp thay vì giải pháp, vì bạn có thể làm những việc rất hạn chế với nó. Bạn không thể làm 'POST' (hoặc 'PUT', vv) thông qua JSONP. – acdcjunior