Spa with Net5.0 避免在 fall back 中丢失 QueryString
Spa with Net5.0 avoid in fall back the loss of QueryString
为了我的英语,因为我不是母语。
首先,我使用 Angular front/Net 5.0 返回。
我的问题是,每次我转到我的 Spa 应用程序(从另一个处理登录的应用程序)时,我都会松开查询字符串并重定向到 /,我如何配置应用程序以不丢失查询字符串?
这是我的配置服务。
public void ConfigureServices(IServiceCollection services)
{
string mySqlConnectionStr = Configuration.GetConnectionString("DefaultConnection");
services.AddControllers();
services.AddDbContextPool<recursoContext>(options => options.UseMySQL(mySqlConnectionStr));
services.AddLogging();
services.AddSwaggerGen(c =>
{
c.SwaggerDoc("v1", new OpenApiInfo { Title = "WebContainerUI", Version = "v1" });
});
services.AddSpaStaticFiles(configuration =>
{
configuration.RootPath = "/";
});
}
这是我的配置
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
app.UseSwagger();
app.UseSwaggerUI(c => c.SwaggerEndpoint("/swagger/v1/swagger.json", "WebContainerUI v1"));
}
app.UseHttpsRedirection();
app.UseDefaultFiles();
app.UseStaticFiles();
app.UseRouting();
app.UseMiddleware<Jwt.JwtMiddleware>();
app.UseAuthorization();
app.UseEndpoints(endpoints =>
{
endpoints.MapControllers();
endpoints.MapFallbackToFile("/index.html");
});
app.UseSpa(spa =>
{
// To learn more about options for serving an Angular SPA from ASP.NET Core,
if (env.IsDevelopment())
{
// spa.UseAngularCliServer(npmScript: "start");
}
});
}
此外,该应用程序的目标是将 JwT 处理为一种无需会话(那里没有 cookie)的身份验证方法。
因为我正在学习,所以不知道把它放在一起的最好方法,所以想听听一些建议。
感谢您的帮助。
只是如果有人有同样的问题,它与.Net Core的Sparedirection/fallback无关,问题出在angular(客户端)如何做路由,所以令牌由前端接收,但以某种方式被重定向(客户端)擦除。
为了我的英语,因为我不是母语。 首先,我使用 Angular front/Net 5.0 返回。 我的问题是,每次我转到我的 Spa 应用程序(从另一个处理登录的应用程序)时,我都会松开查询字符串并重定向到 /,我如何配置应用程序以不丢失查询字符串? 这是我的配置服务。
public void ConfigureServices(IServiceCollection services)
{
string mySqlConnectionStr = Configuration.GetConnectionString("DefaultConnection");
services.AddControllers();
services.AddDbContextPool<recursoContext>(options => options.UseMySQL(mySqlConnectionStr));
services.AddLogging();
services.AddSwaggerGen(c =>
{
c.SwaggerDoc("v1", new OpenApiInfo { Title = "WebContainerUI", Version = "v1" });
});
services.AddSpaStaticFiles(configuration =>
{
configuration.RootPath = "/";
});
}
这是我的配置
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
app.UseSwagger();
app.UseSwaggerUI(c => c.SwaggerEndpoint("/swagger/v1/swagger.json", "WebContainerUI v1"));
}
app.UseHttpsRedirection();
app.UseDefaultFiles();
app.UseStaticFiles();
app.UseRouting();
app.UseMiddleware<Jwt.JwtMiddleware>();
app.UseAuthorization();
app.UseEndpoints(endpoints =>
{
endpoints.MapControllers();
endpoints.MapFallbackToFile("/index.html");
});
app.UseSpa(spa =>
{
// To learn more about options for serving an Angular SPA from ASP.NET Core,
if (env.IsDevelopment())
{
// spa.UseAngularCliServer(npmScript: "start");
}
});
}
此外,该应用程序的目标是将 JwT 处理为一种无需会话(那里没有 cookie)的身份验证方法。 因为我正在学习,所以不知道把它放在一起的最好方法,所以想听听一些建议。 感谢您的帮助。
只是如果有人有同样的问题,它与.Net Core的Sparedirection/fallback无关,问题出在angular(客户端)如何做路由,所以令牌由前端接收,但以某种方式被重定向(客户端)擦除。