C# HttpClient Post请求,并获取此错误“;状态代码:500,原因短语:';内部服务器错误';,版本:1.1;

C# HttpClient Post请求,并获取此错误“;状态代码:500,原因短语:';内部服务器错误';,版本:1.1;,c#,api,.net-core,httpclient,dotnet-httpclient,C#,Api,.net Core,Httpclient,Dotnet Httpclient,我有以下代码将post请求发送到API string RequestUri = "api/MyProj/XYZ"; string uri = "http://stagingmyapp.xyz.com"; string ContentBody = "{\"DeviceType\":\"desktop\",\"matchesData\":[{\"MatchId\":988682,\"HomeTeamName\":\"Chelsea\",\"AwayTeamName\":\"Bayern Munche

我有以下代码将post请求发送到API

string RequestUri = "api/MyProj/XYZ";
string uri = "http://stagingmyapp.xyz.com";
string ContentBody = "{\"DeviceType\":\"desktop\",\"matchesData\":[{\"MatchId\":988682,\"HomeTeamName\":\"Chelsea\",\"AwayTeamName\":\"Bayern Munchen\",\"BetTypeId\":2,\"BetValue\":null,\"OddEU\":\"3.85\",\"OddUK\":\"14/5\",\"Tip\":\"1\"}]}";
var requestToken = new HttpRequestMessage
{
Method = HttpMethod.Post,
RequestUri = new Uri(new Uri(uri), RequestUri),
Content = new StringContent(ContentBody, Encoding.UTF8, "application/json")
};
requestToken.Headers.Clear();
requestToken.Headers.Add("Authorization", String.Format("Bearer {0}", SetTokenModel.Token));
using (var client = new HttpClient())
{
var res = await client.SendAsync(requestToken);
}
我得到了这个错误“StatusCode:500,ReasonPhrase:'内部服务器错误',版本:1.1”,即使我通过邮递员将相同的ContentBody(JSON)直接传递给请求,我也得到了准确的结果。
对于整个应用程序,相同的代码可以正常工作(对于其他post请求而言)。
正如你所看到的,我在《邮递员》中传递了相同的
ContentBody
,我得到了结果,但在C#中,我得到了错误。如果它是服务器端错误,那么它应该给我一个错误在邮递员这里也。

您编写服务器了吗?你能调试/查看日志吗?我已经查看了日志,我得到了这个。。。。警告:Microsoft.AspNetCore.HttpsPolicy.HttpsRedirectionMiddleware[3]无法确定重定向的https端口。失败:Microsoft.AspNetCore.Server.Kestrel[13]连接id“0HLTQ02CI1IHM”,请求id“0HLTQ02CI1IHM:00000008”:应用程序引发了未经处理的异常。System.NullReferenceException:对象引用未设置为对象的实例。看起来您的服务器正在某个地方抛出
NullReferenceException
。这取决于你去哪里,为什么!您是否尝试过将
ContentBody
转换为
Json
格式的其他请求格式?@MdFaridUddinKiron我正在为每个请求将
ContentBody
转换为
Json
。。。而且工作得很好。。。