Я допускаю странное поведение с .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();
Любая помощь будет оценена!