ASP.NET Core 3.1 WebAPI的配置問題


1.swagger的配置

  1:通過NuGet程序包添加 Swashbuckle.AspNetCore

  2:將 Swagger 生成器添加到 Startup.ConfigureServices 方法中的服務集合中:

    services.AddSwaggerGen(c =>

    {

      c.SwaggerDoc("v1", new OpenApiInfo { Title = "My API", Version = "v1" });

    });

  3:在 Startup.Configure 方法中,啟用中間件為生成的 JSON 文檔和 Swagger UI 提供服務:

    app.UseSwagger();

    app.UseSwaggerUI(c =>

    {

      c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");

     });

2.跨域問題

  1:通過NuGet程序包添加  Microsoft.AspNetCore.Cors 

  2:在Startup類里先定義一個全局變量。

    private readonly string AllowSpecificOrigin = "AllowSpecificOrigin";

  3:在Startup的ConfigureServices中添加以下代碼來配置跨域處理。

    services.AddCors(options =>
    {
       options.AddPolicy(AllowSpecificOrigin,
         builder =>
           {
             builder.AllowAnyMethod()
                 .AllowAnyOrigin()
                 .AllowAnyHeader();
           });
    });

  4:在Startup的Configure中添加以下代碼來配置跨域處理。

    app.UseRouting();

    //CORS 中間件必須配置為在對 UseRouting 和 UseEndpoints的調用之間執行。 配置不正確將導致中間件停止正常運行。
    app.UseCors(AllowSpecificOrigin);
    app.UseEndpoints(endpoints => { endpoints.MapControllers(); });


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM