使用 next-auth.js 跳过登录页面直接进入第三方认证提供商。

26

我正在使用next-auth.js和Okta进行开发。由于我仅使用一个提供程序(在Okta登录中将使用更多提供程序),所以我能直接跳过这个页面并直接进入Okta登录页面吗?如果可以,应该如何实现?enter image description here


1
跳过这个问题。我也试图跳过这个页面。根据文档:“如果你想创建一个自定义的登录链接,你可以链接到/api/auth/signin/[provider],这将直接使用该提供商登录用户。”我尝试使用<a href="/api/auth/signin/google">使用Google登录</a>,但没有成功。仍然将我推送到默认的登录页面。 - crrmacarse
1
更新:我已在此处提出问题:https://github.com/nextauthjs/next-auth/issues/1582 - crrmacarse
1个回答

37

你可以使用signIn直接跳转到提供商的登录页面。

<button type="button" onClick={() => signIn([provider])}>Sign in with Provider</a>

provider.id替换provider以选择想要使用的provider。在您的情况下,它将是signIn('okta')

参考:https://next-auth.js.org/getting-started/client#signin


2
此方法无法在 getStaticProps 或 getServerSideProps 中正常工作。 - Design by Adrian
运作完美。 - Duc Trung Mai

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接