【问题标题】:Blazor Set-Cookie not effectiveBlazor Set-Cookie 无效
【发布时间】:2021-09-20 11:43:02
【问题描述】:

我正在尝试在 Chrome 中运行的 Blazor WebAssembly 中设置 Cookie 身份验证。

WebApp 在 https://localhost:44342 上运行
WebApi 在 https://localhost:44377 上运行

在使用有效凭据向 https://localhost:44377/user/loginuser 发出 post 请求(使用 PostAsJsonAsync)后,WebApi 会发送回带有 Set-Cookie 的响应标头:.AspNetCore.Cookies=...

那个cookie似乎被浏览器拒绝了,因为

  1. 我在 F12 -> 应用程序 -> Cookies 中看不到它
  2. 后续请求没有附加 cookie

我在网上广泛研究了这个问题。我发现了大量的提示和解释。包括配置 CORS、使用 IP 代替 localhost、设置 cookie 属性(如 SameSite、HttpOnly、Expiration 和 Domain)或使用 chrome 内部结构进行进一步调查。

这些都没有帮助。浏览器仍然会忽略 Set-Cookie。

有没有人知道我该如何继续?谢谢

【问题讨论】:

    标签: google-chrome cookies blazor-webassembly setcookie cookie-authentication


    【解决方案1】:

    我可能有同样的问题。 Chrome 浏览器拒绝 cookie,因为域没有使用 SSL,并且 cookie 策略使用 samesite:none。

    我在 IIS 中使用证书解决了问题(使用 HTTPS 而不是 HTTP)。我只在生产中遇到过这个问题。对于开发环境,当您创建项目时,Visual Studio 会询问您是否要注册开发证书。检查是。

    【讨论】:

      猜你喜欢
      • 2012-10-09
      • 2022-08-21
      • 2012-06-14
      • 2019-10-09
      • 2022-08-17
      • 2020-07-12
      • 2019-08-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多