当前位置: 首页 > news >正文

常见的服务注册(Add Services)

使用 builder.Services.Add... 添加各种服务。

常见的中间件(Use Middleware)

使用 app.Use... 配置请求处理管道(执行顺序很重要!)

一个典型的 Program.cs 示例(.NET 6+ Web API)

var builder = WebApplication.CreateBuilder(args);// ======== 注册服务(Services)========
builder.Services.AddControllers();
builder.Services.AddEndpointsApiExplorer();
builder.Services.AddSwaggerGen();// 数据库上下文
builder.Services.AddDbContext<AppDbContext>(options =>options.UseSqlServer(builder.Configuration.GetConnectionString("DefaultConnection")));// CORS
builder.Services.AddCors(options =>
{options.AddPolicy("AllowAll", policy =>policy.AllowAnyOrigin().AllowAnyMethod().AllowAnyHeader());
});// 认证(如 JWT)
builder.Services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme).AddJwtBearer(options =>{options.TokenValidationParameters = new TokenValidationParameters{ValidateIssuer = true,ValidateAudience = true,ValidateLifetime = true,ValidIssuer = builder.Configuration["Jwt:Issuer"],ValidAudience = builder.Configuration["Jwt:Audience"],IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(builder.Configuration["Jwt:Key"]))};});builder.Services.AddAuthorization();// 健康检查
builder.Services.AddHealthChecks();var app = builder.Build();// ======== 配置中间件管道(Middleware Pipeline)========if (app.Environment.IsDevelopment())
{app.UseDeveloperExceptionPage();app.UseSwagger();app.UseSwaggerUI();
}
else
{app.UseExceptionHandler("/error");// app.UseHsts(); // 生产环境启用 HSTS
}app.UseHttpsRedirection();
app.UseStaticFiles(); // 如果有静态资源
app.UseCors("AllowAll");app.UseRouting();app.UseAuthentication();
app.UseAuthorization();// 健康检查
app.UseHealthChecks("/health");// 映射控制器
app.MapControllers();// 可选:最小 API
app.MapGet("/", () => "Welcome to the API!");app.Run();

http://www.dtcms.com/a/412374.html

相关文章:

  • 【mdBook】3 创建书籍
  • 如何米尔RK3576开发板上移植EtherCAT Igh
  • 建设公司设计公司网站网页模板怎么做网站
  • 政务门户网站建设方案南京网络推广公司排名
  • 做淘宝网站代理wordpress中文翻译插件
  • [Python编程] Python3 文件操作
  • 济源网站优化网页升级紧急通知中
  • 桂林论坛网网站电话郑州外贸网站制作
  • Gin 框架令牌桶限流实战指南
  • php做自己的网站百度浏览器网页版
  • 珠海网站建设找哪家电子政务与网站建设方面
  • LeetCode:60.单词搜索
  • 给一个网站风格做定义怎样在微信中做网站
  • JxBrowser 7.44.1 版本发布啦!
  • 代运营公司是怎么运营的安徽网站seo公司
  • 完整教程:从0到1在Windows下训练YOLOv8模型
  • c2c商城网站开发企业宣传方式
  • 网站图片的暗纹是怎么做的楼盘网站建设方案ppt
  • 免费的代码分享网站龙岩做网站公司在哪里
  • 黑马八股笔记
  • MQTT 会话 (Session) 详解
  • 网站强制使用极速模式ppt超级市场
  • 17.zwd一起做网站池尾站安卓下载软件app
  • qq自动发货平台网站怎么做wordpress动态文章页模板下载
  • 龙芯在启动参数里添加串口信息
  • 网站域名spacewordpress 打开很慢
  • 收到短信说备案被退回但工信部网站上正常啊wordpress自动缩略图
  • 目前做网站最流行的程序语言网站出问题
  • 上海网站营销seo怎么查看网站是哪个公司建的
  • Stata语法详解:从入门到精通