[英]How do I return a custom HTTP response in an ASP.NET Core Controller?
在 ASP.NET 核心 MVC 中,如何返回自定義 HTTP 響應以及自定義 HTTP 代碼? 我希望能夠自己構建響應,並且最好從控制器返回它。
public IActionResult Index()
{
// set custom HTTP response and return
}
.... 有人獲取索引,我應該能夠手動發送如下響應,在那里我可以控制響應的各個方面。 我什至可以簡單地返回一個我自己構建的字符串。
HTTP/1.1 200 OK
Date: Mon, 27 Jul 2009 12:28:53 GMT
Server: Apache/2.2.14 (Win32)
Last-Modified: Wed, 22 Jul 2009 19:15:56 GMT
Content-Length: 88
Content-Type: text/html
Connection: Closed
我如何在 ASP.NET Core MVC 中做到這一點?
我意識到我有點狹隘,答案比我最初預期的要簡單得多。
public void Index()
{
Response.StatusCode = 200;
Response.StartAsync();
return;
}
這允許人們自己簡單地將數據添加到響應中並將它們發送到客戶端。 我正在使用 ASP.NET Core 3.1 MVC。
從這里調整答案......
public IActionResult Index()
{
return StatusCode((int)HttpStatusCode.MovedPermanently);
}
另一個示例,如果您想在響應正文中傳回 400 狀態代碼和驗證錯誤...
public IActionResult Index()
{
var validationErrors = _repository.Validate()
return StatusCode((int)HttpStatusCode.BadRequest, validationErrors);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.