Почему мои куки не добавляются в Chrome или Firefox при использовании Response.Cookies.Append, когда анонимно? - PullRequest
0 голосов
/ 22 октября 2019

Я допускаю странное поведение с .NET Core 2.2 и файлами cookie в моем веб-API.

Проблема возникает, когда я добавляю файл cookie с помощью Response.Cookies.Append (- Cookie -). Он ведет себя по-разному, когда я аутентифицируюсь как анонимный ИЛИ аутентифицируемый с использованием токена-носителя JWT.

  • При аутентификации он создает мой cookie без каких-либо проблем.
  • При анонимном добавлении cookieв ответе, который я вижу в Fiddler, но мой браузер (Chrome или Firefox) отказывается добавлять мои cookie.

Я запускаю оба приложения локально:

  • Angularприложение (localhost: 4200)
  • Web API (localhost: 7000)
// Controller code
this.Response.Cookies.Append(
    COOKIE_NAME,
    base64StringVariable,
    new CookieOptions
    {
        Expires = DateTime.Now.AddYears(1),
        IsEssential = true
    });

// Startup.cs -> ConfigureServices
services.Configure<CookiePolicyOptions>(options =>
    {
        options.CheckConsentNeeded = context => true;
        options.MinimumSameSitePolicy = SameSiteMode.None;
    });
​
services.AddCors(
    options =>
    {
        options.AddPolicy(
            CORS_POLICY_NAME,
            builder =>
                {
                    builder.WithOrigins(serverSettings.WebsiteUri); // http://localhost:4200
                    builder.AllowAnyMethod();
                    builder.AllowAnyHeader();
                    builder.AllowCredentials();
                });
    });
​
// Startup.cs -> Configure
app.UseCors(CORS_POLICY_NAME);
app.UseStaticFiles();
app.UseCookiePolicy();
app.UseAuthentication();
app.UseResponseCaching();
app.UseMvc();

Любая помощь будет оценена!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...