jQuery.ajax () отправляет запросы POST, как Входят в расширение Chrome

Я создаю маленькое расширение Chrome, которое должно отправить сообщения через запрос HTTP POST к серверу в моей сети компании, и я использую 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 и с текстом "Это, методы требуют POST".

Если я изменяюсь на код выше с этим:

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, и сторона сервера I видит, что данные, которые я отправил, правильно сохраняются.

Я должен использовать полный $ .ajax () метод, потому что я должен сделать некоторую работу в случае успешности или неуспешности и некоторого другого, когда запрос завершен, таким образом, $ .post () недостаточно.
Я делаю что-то не так, называя $ .ajax (), или существует проблема некоторого вида, возможно, потому что я нахожусь в xontext расширения Chrome?

Спасибо

5
задан Davide Gualano 2 February 2010 в 22:57
поделиться