You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

跨域环境下Nuxt SPA与ASP.NET Core的Google登录问题排查

Nuxt SPA + ASP.NET Core Google登录跨域第三方Cookie问题排查

问题背景

我花了几天时间解决跨域部署的Nuxt SPA客户端与ASP.NET Core服务端的Google登录问题。当前方案在默认拦截第三方Cookie的浏览器(如Brave、Safari)中完全失效,关闭拦截后则能正常运行。

正常流程:Nuxt应用通过外部链接跳转到API端点,该端点重定向用户到Google登录页;登录完成后,服务端将用户重定向回客户端,并通过Cookie存储令牌。但第三方Cookie被拦截时,这个流程走不通。

尝试的解决方案及新问题

为解决Cookie传递问题,我尝试用Nuxt代理,将请求通过客户端域名的Nuxt服务器转发。此时邮箱/密码登录能正常工作,但Google登录页显示在客户端域名下,输入邮箱后出现“Something went wrong”错误,推测是代理过度处理了Google相关请求。

随后我在Nuxt代理中设置redirect="manual":

const res = await proxyRequest(event, target, {
  fetchOptions: { credentials: "include", redirect: "manual" },
  cookieDomainRewrite: "nietzschess.xyz"
})

设置后Google登录页能正常在https://accounts.google.com/加载,但登录完成后Google重定向至后端回调URI时,API返回500错误。日志显示关联Cookie不匹配:

warn: Microsoft.AspNetCore.Authentication.Google.GoogleHandler[15]:
'.AspNetCore.Correlation.YzS8xkFzg-4OG36DirGmUHqimr5lOwXKftNgHxO24Ec' cookie not found.
info: Microsoft.AspNetCore.Authentication.Google.GoogleHandler[4]
Error from RemoteAuthentication: Correlation failed..
fail: Microsoft.AspNetCore.Server.Kestrel[13]
Connection id "0HNBNDSENR62I", Request id "0HNBNDSENR62I:00000005": An unhandled exception was thrown by the application.
Microsoft.AspNetCore.Authentication.AuthenticationFailureException: An error was encountered while handling the remote login.
 ---> Microsoft.AspNetCore.Authentication.AuthenticationFailureException: Correlation failed.
--- End of inner exception stack trace ---
 at Microsoft.AspNetCore.Authentication.RemoteAuthenticationHandler`1.HandleRequestAsync()
 at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
 at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpProtocol.ProcessRequests[TContext](IHttpApplication`1 application)

回调请求中存在关联Cookie,但ID不匹配(.AspNetCore.Correlation.wBq43NhtKaKq7pwjxUNe-EasZpTygbPqzEylzqnXwOY=N)。我清楚关联Cookie在OAuth流程开始时分配给客户端,完成后失效,但不清楚为何在此阶段出现不匹配,希望得到帮助。

额外需求

想了解是否有更优的实现方案或参考示例。相关代码可查看GitHub仓库:

  • client仓库
  • api仓库

内容的提问来源于stack exchange,提问作者Hossein Ebrahimi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 10:53:15