HTTP POST 在 OWIN 自托管 Web API 中不工作

HTTP POST not working in OWIN Self-Host Web API

我正在自己托管一个网站 API。我从集成测试中发出的任何 Get Reqeust 都可以正常工作。但是任何 POST 请求都会抛出连接被拒绝。我似乎无法掌握正在发生的事情。

错误信息

system.Net.HttpRequestException: An error occured while sending the request to the remote server. SocketException: no connection could be made because the target machine actively refused. 

代码

using (WebApp.Start<App_Start.TestConfiguration>("http:/localhost:8216"))
{
    var client = new HttpClient();
    client.BaseAddress = new System.Uri("http://127.0.0.1:8216");

    var response = await client.PostAsync("/api/MyController", new StringContent("something"));
}

控制器

public string Post(string value)
{
    return "Hello!";
}

你会不会漏掉了一个 / on:

using (WebApp.Start<App_Start.TestConfiguration>("http:/localhost:8216"))

应该是http://localhost:8216.

我遇到了同样的问题,发现有必要在你的方法参数之前使用 [FromBody] 属性。在这种情况下,它可以解析请求有效负载,您可以访问您的方法

希望对您有所帮助