当我调用 REST API 时,它会生成 500 - 内部服务器错误,但当我使用 Postman 调用它时,它会起作用。 下面是我的代码:
using (HttpClient httpClient = new HttpClient())
{
httpClient.BaseAddress = new Uri("...");
httpClient.DefaultRequestHeaders.Accept
.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));
HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Post, httpClient.BaseAddress);
request.Content =
new StringContent(JsonConvert.SerializeObject(objLogin), Encoding.UTF8, "application/json");
//here get 500 - Internal Server Error.
HttpResponseMessage response = httpClient.SendAsync(request).Result;
//...
}
我已经尝试过:
但我总是得到相同的结果。
我也遇到了同样的问题,这篇文章对我帮助很大: https://eliasdc.dev/index.php/2023/12/04/14/
总结:
httpClient.DefaultRequestHeaders.ExpectContinue = false
request.Version = HttpVersion.Version10;
还没有工作吗? 您可以将您的标头与邮递员标头进行比较。在同一篇文章(https://eliasdc.dev/index.php/2023/12/04/14/)中,作者解释了如何做到这一点,并展示了如何使用此代码来帮助您: https://github.com/eliasedc/ApiGetHeaders
希望对你有帮助