jQuery发送GET,即使我的代码要求发布

jQuery发送GET,即使我的代码要求发布,jquery,Jquery,由于某些原因,服务器总是看到GET $("#yes-link").click(function () { $.ajax({ type: "POST", url: "http://0.0.0.0:3001/api/helpful/", data: {url: "sad", value: "yes"}, dataType: "jsonp", success: function(data) { alert(data

由于某些原因,服务器总是看到GET

$("#yes-link").click(function () {
    $.ajax({
        type: "POST",
        url: "http://0.0.0.0:3001/api/helpful/",
        data: {url: "sad", value: "yes"},
        dataType: "jsonp",
        success: function(data) { alert(data); }
    });
 });

另外,参数列表中的“1405634368649”是什么?

JSONP请求不是真正的“请求”。jQuery在
src
属性为
http://0.0.0.0:3001/api/helpful/?callback=...
。回调的名称是随机生成的。脚本加载后,将执行回调。jQuery应该抛出一个错误。是的,但是为什么它要执行GET而不是我要求的POST呢?而且我也没有问回调名称,我问的是另一个名为“u”的参数,因为使用
标记的请求总是
GET
@pitosalas:这是一个缓存清除器。您不能指定浏览器请求脚本的方法,因为它总是获取。正如我所说,这是jQuery的一个bug。它根本不应该发送请求。实际上,您不能发布jsonp,它总是作为get发送
Started GET "/api/helpful/?callback=jQuery11110520667711738497_1405634368646&url=sad&value=yes&_=1405634368649" for 127.0.0.1 at 2014-07-17 18:01:30 -0400
Processing by Api::HelpfulController#get as JSON
Parameters: {
                "callback" = > "jQuery11110520667711738497_1405634368646",
                "url" = > "sad", 
                "value" = > "yes", 
                "_" = > "1405634368649"
                }
  User Load (0.2ms)  SELECT  "users".* FROM "users"  WHERE "users"."ip" = '127.0.0.1' LIMIT 1
  Helpful Load (0.1ms)  SELECT  "helpfuls".* FROM "helpfuls"  WHERE "helpfuls"."user_id" = 1 AND "helpfuls"."url" = 'sad' LIMIT 1
Completed 200 OK in 2ms (Views: 0.1ms | ActiveRecord: 0.3ms