asp.net 在.NET 6中使用应用程序时,将缺少控制-允许-原点

pcww981p  于 2023-11-20  发布在  .NET
关注(0)|答案(1)|浏览(163)
  1. namespace CorsTest
  2. {
  3. public class Program
  4. {
  5. public static void Main(string[] args)
  6. {
  7. var builder = WebApplication.CreateBuilder(args);
  8. builder.Services.AddCors(options =>
  9. {
  10. options.AddPolicy(name: "MyAllowSpecificOrigins", policy => {
  11. policy.AllowAnyOrigin();
  12. });
  13. });
  14. // Add services to the container.
  15. builder.Services.AddControllers();
  16. // Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
  17. builder.Services.AddEndpointsApiExplorer();
  18. builder.Services.AddSwaggerGen();
  19. var app = builder.Build();
  20. // Configure the HTTP request pipeline.
  21. if (app.Environment.IsDevelopment())
  22. {
  23. app.UseSwagger();
  24. app.UseSwaggerUI();
  25. }
  26. app.UseHttpsRedirection();
  27. app.UseCors("MyAllowSpecificOrigins");
  28. app.UseAuthorization();
  29. app.MapControllers();
  30. app.Run();
  31. }
  32. }
  33. }

字符串
请考虑上面的代码,它与WebAPI 2启动模板完全相同,并添加了以下片段

  1. builder.Services.AddCors(options =>
  2. {
  3. options.AddPolicy(name: "MyAllowSpecificOrigins", policy => {
  4. policy.AllowAnyOrigin();
  5. });
  6. });
  1. app.UseCors("MyAllowSpecificOrigins");

的数据
这些片段是直接从MSDN复制的。然而,它不能正常工作。当我试图在Swagger中触发请求时,Access-Control-Allow-Origin头部丢失,而我希望响应中包含类似Access-Control-Allow-Origin: *的内容。提前感谢您的任何建议


的数据

xwbd5t1u

xwbd5t1u1#

也许你还需要在策略中添加标题

  1. policy.AllowAnyOrigin().AllowAnyHeader();
  2. policy.AllowAnyOrigin().WithHeaders("Access-Allow-Origin", "*");

字符串
如需了解更多信息,请访问此

相关问题