Asp.net web api 当我把它设置为POST时,为什么Fiddler在做一个GET呢

Asp.net web api 当我把它设置为POST时,为什么Fiddler在做一个GET呢,asp.net-web-api,fiddler,Asp.net Web Api,Fiddler,当我试图从Fiddler调用我的WEB API时,它使用GET调用,即使我将Fiddler设置为使用POST 注意:我所有的GET-API方法都工作正常 POST http://www.myapisite.com/api/UserAccounts/CreateAccount [Header] User-Agent: Fiddler Host: www.myapisite.com Content-Type: application/json; charset=utf-8 Content

当我试图从Fiddler调用我的WEB API时,它使用GET调用,即使我将Fiddler设置为使用POST

注意:我所有的GET-API方法都工作正常

POST   http://www.myapisite.com/api/UserAccounts/CreateAccount

[Header] User-Agent: 
Fiddler Host: www.myapisite.com 
Content-Type: application/json; charset=utf-8 
Content-Length: 453

[Request Body]
{
   "user_id": "1",
   "store_id": "1",
   "merchant_id": "1"
}
我的WEB API方法签名:

    [ValidateModelState]
    [System.Web.Mvc.HttpPost]
    [Route("api/UserAccounts/CreateAccount")]
    [EnableCors(origins: "mymvcsite.com", headers: "*", methods: "*")]
    public virtual IHttpActionResult CreateAccont(
        [FromBody]AccountHolderDto accountHolderDto)
    {
       ... 
    }
AccountHolderTo只是一个具有公共属性(用户id、商店id、商户id)的类

非常感谢您的帮助这让我一整天都很困惑

该死!,我删除了uri的“www”前缀,它现在可以工作了 由此: 为此:

难以置信,最小的事情都会引起这么多痛苦

该死!,我删除了uri的“www”前缀,它现在可以工作了 由此: 为此:


难以置信,最小的事情会造成如此多的痛苦

你也能添加实际被调用的方法的代码吗?@RaviA我认为被调用的方法的方法签名就足够了,我不能添加代码,它是专有的。为什么该方法的内部代码与我的Fiddler执行GET而不是POST有任何关系?不,我的问题是发布为上述调用执行的GET方法的签名。为什么您觉得Fiddler正在执行GET?@RaviA,因为在我执行它之后,我在Fiddler中单击Header并获得以下内容:[请求Headers]GET/api/UserAccounts/CreateCount HTTP/1.1[Response Headers]HTTP/1.1 405方法不允许您还可以添加实际被调用的方法的代码吗?@RaviA我认为被调用的方法的方法签名足够了,我不能添加代码,它是专有的。为什么该方法的内部代码与我的Fiddler执行GET而不是POST有任何关系?不,我的问题是发布为上述调用执行的GET方法的签名。为什么您觉得Fiddler正在执行GET?@RaviA,因为在我执行它之后,我在Fiddler中单击Header并获得以下内容:[请求Headers]不允许使用GET/api/UserAccounts/CreateAccount HTTP/1.1[Response Headers]HTTP/1.1 405方法