在我的Web API中,.NET Core 2.2和Cookies令人迷惑。
当我使用Response.Cookies.Append(-Cookie-)附加Cookie时,就会发生此问题。当我通过匿名身份验证或使用JWT承载令牌进行身份验证时,其行为会有所不同。
我正在本地运行两个应用程序:
// 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();
任何帮助将不胜感激!