.Net Core007Http请求

Posted RyouJou

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了.Net Core007Http请求相关的知识,希望对你有一定的参考价值。


简单的Get请求

public class TouristRoutesController : ControllerBase

# 继承Controller
# [Route("api/[controller]")]//路由
# [ApiController]//属性限定
# action函数
# [HttpGet] HttpGet请求
# [HttpGet("{touristRouteId}")] 绑定参数Get请求
/*
   2.get请求单一旅游路线
  api/touristroutes/{touristRouteId}
*/

[HttpGet("{touristRouteId}")]
public IActionResult GetTouristRouteById(Guid touristRouteId){
     var touristRouteFromRepo = _touristRouteRepository.GetTouristRoute(touristRouteId);
      if (touristRouteFromRepo == null)
      {
           return NotFound($"旅游路线{touristRouteId}找不到");
       }
          return Ok(touristRouteFromRepo);
 }

常见的StateCode状态码

1XX:通知
2XX: 成功
	200("OK")
	201 (已创建)
	202 (已接受)
	203 (非授权信息)
	204 (无内容)
3XX 重定向
	301 永久重定向
	302暂时重定向
4XX:客户端错误
	400 Request Header Or Cookie Too Large,顾名思义,头信息或者Cookie信息太多了
	401 Authorization Required,顾名思义,就是需要权限认证
	403 Forbidden顾名思义就是禁止访问
	404 Not Found当我们访问一个不存在的文件时
	413 Request Entity Too Large表示请求实体过大导致
	414 Request-URI Too Large,也就是说我们请求的url太长了
5XX 服务端错误
	500 表示内部服务器错误
	502 bad geteway 在代理模式下后端服务器出现问题引起
	503 Service Temporarily Unavailable 服务是暂时性不可用
	504 Gateway Time-out 超时

StateCode状态码的默认函数

return NotFound($"旅游路线{touristRouteId}找不到");404
return Ok(touristRouteFromRepo);200

内容协商

dotnet core 支持 不同内容格式的转换

# .AddXmlDataContractSerializerFormatters();
 public void ConfigureServices(IServiceCollection services)
        {
            services.AddControllers(setupAction => { //注入Controller服务【dotNETCORE服务】
                setupAction.ReturnHttpNotAcceptable = true;
            }).AddXmlDataContractSerializerFormatters();//支持XML格式

以上是关于.Net Core007Http请求的主要内容,如果未能解决你的问题,请参考以下文章

007.Adding a view to an ASP.NET Core MVC app -- 在asp.net core mvc中添加视图

在 ASP.NET Core 中使用 IHttpClientFactory 发出 HTTP 请求

无法将 http 请求发布到 .Net Core 2.1 Web 项目

Asp.NET Core一个接口的多个实现如何基于当前HTTP请求注册

.NET Core 请求管道

学习ASP.NET Core,怎能不了解请求处理管道[2]: 服务器在管道中的“龙头”地位