首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在.net core 3.1中使用httpclient postasync从webapi获取响应时发生内部服务器错误

在.net core 3.1中使用httpclient postasync从webapi获取响应时发生内部服务器错误
EN

Stack Overflow用户
提问于 2021-06-18 13:53:35
回答 1查看 39关注 0票数 0
代码语言:javascript
复制
_clientRequest = new CustomHttpClient(parameters.AppInstanceID, Cockpit4DIAConnection);
            
HttpContent requestParameter = new ObjectContent<ViewParameters>(parameters, new JsonMediaTypeFormatter());
HttpResponseMessage response = await _clientRequest.PostAsync(_Url + _PartialQueryResultAsString, requestParameter);
return JsonConvert.DeserializeObject<QueryWrapper>(response.Content.ReadAsStringAsync().Result);

此部分查询结果方法在将数据从api传输到此控制器时具有数据,响应在.net核心3.1中作为内部服务器错误500出现。

我正在迁移应用程序。它在asp.net框架中工作得很好。

我有几种使用postasync的方法。他们工作得很好。

响应类型有什么问题吗?

EN

回答 1

Stack Overflow用户

发布于 2021-06-18 21:39:53

内部服务器错误是服务器内部的错误。这不是客户端的错误。

然而,也有可能是服务器处理得不好,你给它提供了不正确的信息,因此返回了500,而不是关于你到底做错了什么的更详细的解释。

例如,假设我向服务器发送一个ID,以获取服务器的数据库中不存在的资源。这应该会产生一个4xx状态响应(因为这是一个客户端错误,而不是服务器错误),但是如果服务器没有正确检查null,它将遇到一个NullReferenceException,当没有处理时,它会冒泡到端点,并被转换为一个500内部服务器错误。

最终的解决方案不是不可能来自您的客户端,更改它发送到服务器的内容,但这只有在您调试服务器(或简单地读取其日志)以找出内部服务器错误的原因之后才能得到确认。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68029992

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档