jquery.ajax () отправляет почтовые запросы как попадание в хромированное расширение
-
25-09-2019 - |
Вопрос
Я наращиваю небольшое расширение Chrome, которое должно отправлять сообщения через запрос на пост HTTP на сервер в сети моей компании, и я использую jQuery 1.4.1, чтобы ускорить разработку деталей JavaScript.
У меня есть этот код для отправки запроса:
function send() {
$.ajax({
url: "http://mycompany.com/update",
method: "POST",
data: {status: "sometest", in_reply_to_status_id: "anId"},
success: function(data, textStatus) {
console.log("success");
console.log(data);
console.log(textStatus);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("error");
console.log(XMLHttpRequest);
console.log(textStatus);
console.log(errorThrown);
},
complete: function(XMLHttpRequest, textStatus) {
console.log("complete");
}
});
}
Запрос сделан таким образом, потерпел неудачу, в журнале Chrome я вижу, что сервер отвечает с помощью состояния HTTP 400 и с текстом «Эти методы требуют поста».
Если я изменяюсь на код выше с этим:
function send() {
$.post("http://sunshine.emerasoft.com/statusnet/api/statuses/update.xml", {status: "sometext", in_reply_to_status_id: "anId"}, function(data) {
console.log(data)
});
}
Все работает нормально, состояние HTTP составляет 200, а сторона сервера, я вижу, что отправленные вами данные правильно сохраняются.
Мне нужно использовать метод full $ .ajax (), потому что мне нужно сделать некоторую работу в случае успеха или неудачи, а некоторые другие, когда запрос завершен, поэтому $ .post () недостаточно.
Я делаю что-то не так, призывающую $ .ajax (), или есть вопрос какой-то, может быть, потому что я в Xontext в хромированном расширении?
Спасибо
Решение
Я верю $ .ajax () Функция принимает опцию «Тип», а не опция «Метод».
Тип по умолчанию получен.