AJAX положить запрос не удается? - PullRequest
1 голос
/ 10 марта 2010

Выполнение запроса на получение ajax работает, как и ожидалось, с использованием следующего кода:

$.ajax({
   type: "GET",
   contentType: "application/json",
   url: "http://someSeceretUrl/test/document,
   dataType: "jsonp",
   success: function(msg) {
   console.log(msg);
   },
   error: function(a,b,c) {
     console.log(a);
     console.log(b);
     console.log(c);
}
});

Но вызов ajax PUT использует следующий код:

$.ajax({
   type: "PUT",
   contentType: "application/json",
   url: "http://someObscureURL/test/mrmer1",
   dataType: "jsonp",
   data: {"name":"mike"},
   success: function(msg) {
      console.log(msg);
   },
   error: function(a,b,c) {
     console.log("XMLHttpRequest: " + a);
     console.log("textStatus: " + b);
     console.log("errorThrown: " + c);
  }
  });

приводит к следующему выводу консоли:

XMLHttpRequest: [object XMLHttpRequest]
textStatus: null
errorThrown: [Exception... "Access to restricted URI denied" code: "1012" nsresult: "0x805303f4   (NS_ERROR_DOM_BAD_URI)" location: "http://static.kobj.net/kobj-static-20100219162227.js Line: 371"]

Я думаю, что что-то блокирует запрос PUT, но я не знаю. Что я делаю не так?

Спасибо!

Ответы [ 2 ]

2 голосов
/ 10 марта 2010

Полагаю, вы используете междоменные ограничения . Я не удивлюсь, если http://username:password@somehost будет считаться кросс-доменом.

0 голосов
/ 10 марта 2010

Когда я делал запросы PUT в прошлом, я обнаружил, что если не передать заголовок contentLength, возникает исключение, просто мысль

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...