首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery.ajax()在Chrome扩展中将POST请求作为GET发送

jQuery.ajax()在Chrome扩展中将POST请求作为GET发送
EN

Stack Overflow用户
提问于 2010-02-03 06:57:55
回答 1查看 4K关注 0票数 5

我正在构建一个小的Chrome扩展,它必须通过POST http请求向我公司网络中的服务器发送消息,我正在使用jQuery 1.4.1来加速javascript部分的开发。

我有这个代码来发送请求:

代码语言: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和文本"This methods requires POST“响应。

如果我使用以下代码更改为上面的代码:

代码语言:javascript
复制
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,服务器端我可以看到我发送的数据被正确保存。

我需要使用完整的$.ajax()方法,因为我需要在成功或失败的情况下做一些工作,在请求完成时还需要做一些其他的工作,所以$.post()是不够的。

我调用$.ajax()是不是做错了什么,或者有某种问题,也许是因为我在Chrome扩展的xontext中?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-02-03 07:02:28

我相信$.ajax()函数接受“类型”选项,而不是“方法”选项。

默认类型为GET。

票数 13
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2188418

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档