当我从开发的值更改ASPNETCORE

编程入门 行业动态 更新时间:2024-10-19 09:40:54
本文介绍了当我从开发的值更改ASPNETCORE_ENVIRONMENT的变量时,Swagger页面不起作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我有一个基于.NET6的Web API。 此Web API在Azure应用程序服务上运行。Azure应用服务在Linux上运行。

我使用Open API(Swagger)进行测试和文档编制。 我创建了2个应用程序设置文件。(开发和阶段)

我将ASPNETCORE_ENVIRONMENT变量添加到Azure应用服务的配置中,如下所示。函数用于ASPNETCORE_环境的两个变量(开发和阶段)。

当我将‘Stage’值设置为ASPNETCORE_ENVIRONMENT时,Swagger页面不工作。它给出了404未找到错误。但它适用于开发。

以下是我的启动代码以炫耀配置;

public void ConfigureServices(IServiceCollection services) { services.AddCors(options => options.AddPolicy("AllowAnyOrigin", builder => { builder.AllowAnyOrigin().AllowAnyMethod().AllowAnyHeader(); })); services.AddControllers(); services.AddSwaggerGen(c => { c.SwaggerDoc("v1", new OpenApiInfo { Title = "AllStore.Api", Version = "v1" }); var securitySchema = new OpenApiSecurityScheme { Description = "JWT Authorization header using the Bearer scheme. Example: "Authorization: Bearer {token}"", Name = "Authorization", In = ParameterLocation.Header, Type = SecuritySchemeType.ApiKey, Scheme = "bearer", Reference = new OpenApiReference { Type = ReferenceType.SecurityScheme, Id = "Bearer" } }; c.AddSecurityDefinition("Bearer", securitySchema); var securityRequirement = new OpenApiSecurityRequirement { { securitySchema, new[] { "Bearer" } } }; c.AddSecurityRequirement(securityRequirement); }); }

我真的不明白出了什么问题?有人能帮帮我吗?

推荐答案

更改启动cs中的配置方法,如下所示

public void Configure(IApplicationBuilder app, IWebHostEnvironment env, ILogger<Startup> logger) { if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); } app.UseSwagger(); app.UseSwaggerUI(c => c.SwaggerEndpoint("/swagger/v1/swagger.json", "AllStore.Api v1")); app.UseHttpsRedirection(); app.UseRouting(); app.UseAuthorization(); app.UseEndpoints(endpoints => { endpoints.MapControllers(); }); }

而不是

public void Configure(IApplicationBuilder app, IWebHostEnvironment env, ILogger<Startup> logger) { if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); app.UseSwagger(); app.UseSwaggerUI(c => c.SwaggerEndpoint("/swagger/v1/swagger.json", "AllStore.Api v1")); } app.UseHttpsRedirection(); app.UseRouting(); app.UseAuthorization(); app.UseEndpoints(endpoints => { endpoints.MapControllers(); }); }

更多推荐

当我从开发的值更改ASPNETCORE

本文发布于:2023-11-14 09:38:49,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1586861.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:当我   ASPNETCORE

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!