如何克服 C# 中的 POST 请求 404 错误?

How to overcome POST request 404 error in C#?

我在 运行 向 API 发出 POST 请求的 c# 代码中收到此错误。我能够成功发出获取请求,但无法发出 POST 请求。我是 运行 visual studio 上的 C# 控制台应用代码。

很高兴知道我在提出 POST 请求时是否遗漏了什么。

错误:

StatusCode: 404, ReasonPhrase: 'Not Found', Version: 1.1, Content: System.Net.Http.HttpConnectionResponseContent, Headers:
{
  Date: Wed, 15 Jul 2020 03:40:57 GMT
  Connection: keep-alive
  Vary: Accept-Encoding
  ETag: "5ea1d6db-6486"
  Content-Type: text/html
  Content-Length: 25734
}

POST请求函数-定义:

        public static async Task<HttpResponseMessage> PostInstantTestAsync(InstantTestItem test)
        {
            var url = $"https://someAPI?format=json";
            client.DefaultRequestHeaders.Authorization = new System.Net.Http.Headers.AuthenticationHeaderValue("Bearer", token);
            StringContent stringContent = new StringContent(JsonConvert.SerializeObject(test), Encoding.UTF8, "application/json");

            return await client.PostAsync(url, stringContent);
        }

POST函数调用,打印响应:

            InstantTestItem test = JsonConvert.DeserializeObject<InstantTestItem>(JSONdata);
            var response = await PostInstantTestAsync(test);
            var testDetails = await response.Content.ReadAsStringAsync();
            Console.Out.WriteLine(testDetails);

您好,我发现了我的代码中的错误

  1. 为 API 端点传递不正确的 url -> 清除给了我 400 错误(错误请求)。

  2. 400 错误是由于不正确的对象处理(不正确的 json 对象)造成的,更正我能够成功请求。