如何从控制器返回特定的状态码和内容?
我想要下面的示例控制器返回没有内容的状态代码418。 设置状态码非常简单,但是似乎需要做些事情来表明请求的结束。 在ASP.NET Core之前的MVC中,或者在可能是对Response.End()
的调用的WebForms中,但是在ASP.NET Core中如何工作,其中Response.End
不存在?
public class ExampleController : Controller { [HttpGet][Route("/example/main")] public IActionResult Main() { this.HttpContext.Response.StatusCode = 418; // I'm a teapot // How to end the request?????? // I don't actually want to return a view but perhaps the next // line is required anyway? return View(); } }
this.HttpContext.Response.StatusCode = 418; // I'm a teapot
如何结束这个请求??????
尝试其他解决scheme,只是:
return StatusCode(418);
您可以使用StatusCode(???)
返回任何HTTP状态码。
另外,您可以使用专门的结果:
成功:
-
return Ok()
←Http状态码200 -
return Created()
←Http状态码201 -
return NoContent();
←Http状态码204
客户端错误:
-
return BadRequest();
←Http状态码400 -
return Unauthorized();
←Http状态码401 -
return NotFound();
←Http状态码404
更多细节:
- ControllerBase类 (谢谢@Technetium)
- StatusCodes.cs (在ASP.NET核心中可用的常量)
- 在维基上的HTTP状态码
- HTTP状态码IANA
- 启动后更改MVC6的路由收集
- 如何在ASP.NET CORE中获取客户端IP地址?
- ASP.NET Core中基于令牌的身份validation(刷新)
- 您在* nix服务器上为ASP.NET Core制作哪个Web服务器?
- 使用ASP.NET Core Web应用程序(.NET Core)与net461设置为唯一框架并使用(.NET Framework)模板之间的区别
- JSON序列化/反序列化在ASP.Net核心
- 如何从ASP.NET Core中的Config.json中读取AppSettings值
- 如何获取部署在Azure网站上的ASP.NET 5应用程序的错误详细信息?
- 我如何诊断在dnx中缺less的依赖关系(或其他加载失败)?