NextJS OAuth2认证服务器端无express

r03*_*r03 3 authentication google-oauth next.js

我想将 OAuth2 身份验证(我将从 Google 开始)添加到我的 NextJS 应用程序中,而不使用 Auth0 等额外服务。

这对于 PassportJS 来说是可能的,但随后我需要添加 Express 作为自定义服务器,这样我就会失去 NextJS 的一些优势。

Next 有中间件支持,但仅用于连接: https: //nextjs.org/docs/api-routes/api-middlewares

我不想要仅客户端的解决方案。我更喜欢带有 http-only cookie 的服务器端。

最好的解决方案是什么?

r03*_*r03 5

更新:您现在可以使用这个: https: //next-auth.js.org/

旧答案:
我似乎可以使用 PassportJS 来实现:https://www.npmjs.com/package/next-connect Next-connect 允许类似于 Express 的中间件。这是使用 PassportJS 的示例:https://github.com/hoangvvo/nextjs-mongodb-app