我将我的ASP.NET Core Web API托管在Azure上。然后,我也将我的有角前端应用程序托管在另一个域上的azure上。
每当我尝试从角度登录用户时,都可以看到我的后端rest api在标头中发送回cookie,但是浏览器没有保留该cookie。我已经尽力想了一切,但没有运气。
在我的ASP.Net Core发行cookie中:
Response.Cookies.Append("TEST_COOKIE.test.test", "NOTHING HERE TO SEE", new CookieOptions()
{
SameSite = SameSiteMode.None
});
CORS配置:
services.AddCors(options =>
{
options.AddPolicy("AllowAll",
new Microsoft.AspNetCore.Cors.Infrastructure.CorsPolicyBuilder()
.WithOrigins(jwtAppSettingOptions[nameof(JwtIssuerOptions.Audience)])
.AllowAnyHeader()
.AllowCredentials()
.Build()
);
});
使用CORS:
app.UseMiddleware<JwtBearerMiddleware>()
.UseAuthentication()
.SeedDatabase()
.UseHttpsRedirection()
.UseCors("AllowAll")
.UseMvc();
我尝试过类似的事情:
1.使用withCredentials: true
选项从Angular发送发帖请求。没运气。
2.我尝试过禁用和删除每种CORS方法中的一种,但不走运。
3.我尝试过对WithOrigins
参数进行强制编码,但不走运。
我不知道该怎么办,因为我阅读的所有其他内容都表明该工作正常。