HttpResponseMessage 是 IsSuccessStatusCode C#
HttpResponseMessage is IsSuccessStatusCode C#
我在 API 中尝试使用 PutAsync 更新某些字段。如果 Put 成功,我将收到作为响应发送的消息。但是如果这样做时有任何异常,我将不得不将异常消息作为响应发送
HttpResponseMessage responseMessage = (await client_Name.PutAsync(c_URL, httpContent));
if (responseMessage.IsSuccessStatusCode)
{
return Ok(serviceResponse);
}
else
{
string errormessage = responseMessage.StatusCode.ToString();
}
我不确定如何处理 HttpResponseMessage 异常。我知道 responseMessage.StatusCode
给出了状态,但也不确定如何将它们构造为响应,因为 return 类型是 Task<IHttpActionResult>
这取决于您要发回的消息类型。很可能看起来只有 500 就可以了。然后你可以 return InternalServerError:
return InternalServerError(new Exception(...));
如果你想区分500、403等各种状态,你也可以这样做。您可以使用
return Request.CreateErrorResponse()
用代码、消息等发回任何东西
如果您只是想将服务器作为一种代理并直接 return 代码,那么您可以使用:
return new HttpResponseMessage(statusCode)
所有这些都是实现相同结果的各种选项,即 return 带有一些消息返回的 http 状态代码。想要什么完全由您决定。
尝试使用以下内容 return :
return Content(HttpStatusCode.BadRequest, "Any object");
您可以在对象字段中发送您的错误。
我在 API 中尝试使用 PutAsync 更新某些字段。如果 Put 成功,我将收到作为响应发送的消息。但是如果这样做时有任何异常,我将不得不将异常消息作为响应发送
HttpResponseMessage responseMessage = (await client_Name.PutAsync(c_URL, httpContent));
if (responseMessage.IsSuccessStatusCode)
{
return Ok(serviceResponse);
}
else
{
string errormessage = responseMessage.StatusCode.ToString();
}
我不确定如何处理 HttpResponseMessage 异常。我知道 responseMessage.StatusCode
给出了状态,但也不确定如何将它们构造为响应,因为 return 类型是 Task<IHttpActionResult>
这取决于您要发回的消息类型。很可能看起来只有 500 就可以了。然后你可以 return InternalServerError:
return InternalServerError(new Exception(...));
如果你想区分500、403等各种状态,你也可以这样做。您可以使用
return Request.CreateErrorResponse()
用代码、消息等发回任何东西
如果您只是想将服务器作为一种代理并直接 return 代码,那么您可以使用:
return new HttpResponseMessage(statusCode)
所有这些都是实现相同结果的各种选项,即 return 带有一些消息返回的 http 状态代码。想要什么完全由您决定。
尝试使用以下内容 return :
return Content(HttpStatusCode.BadRequest, "Any object");
您可以在对象字段中发送您的错误。