gpt4 book ai didi

c# - 抛出 HttpResponseException 总是导致 StatusCode : 500 response in the client

转载 作者:行者123 更新时间:2023-11-30 16:16:35 28 4
gpt4 key购买 nike

我正在编写一个 MSMVC API 来处理简单的用户注册。在 API 中,当传递给 Controller ​​的数据无效时,我想抛出异常。

    public XmlResult RegisterByEmailAddress(UserModel model)
{
var errorResponse = new HttpResponseMessage(HttpStatusCode.BadRequest)
{
Content = new StringContent("Problem"),
ReasonPhrase = "Problem"
};
throw new HttpResponseException(errorResponse);
}

但是,无论我在异常中设置了什么,我都只会在客户端响应中看到 500 错误。我正在使用 Visual Studio 2012 并在本地 IIS 服务器上以 Debug模式运行 API。

在 Chrome Dev 中看到的响应的实际内容是:

方法:获取,状态:500 内部服务器错误,键入 text/html

有人知道问题出在哪里吗?

最佳答案

我认为,根据您自己的回答和我刚刚进行的一些测试,您的 Controller 继承自错误的基类。如果您发布了 Controller 的其余部分,可能会更容易看到。

所有的API Controller 都应该继承自ApiController

MyController : ApiController

关于c# - 抛出 HttpResponseException 总是导致 StatusCode : 500 response in the client,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18177883/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com