浏览器没有保留来自Asp.Net Core Api的响应发送回的Cookie吗?

时间:2019-07-09 02:06:10

标签: asp.net-core cookies cors setcookie

我将我的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();

这是我从登录请求返回的响应: Response headers

我尝试过类似的事情: 1.使用withCredentials: true选项从Angular发送发帖请求。没运气。 2.我尝试过禁用和删除每种CORS方法中的一种,但不走运。 3.我尝试过对WithOrigins参数进行强制编码,但不走运。

我不知道该怎么办,因为我阅读的所有其他内容都表明该工作正常。

0 个答案:

没有答案