【问题标题】:How to delete user from Auth0 on Next.js?如何在 Next.js 上从 Auth0 中删除用户?
【发布时间】:2021-01-09 03:47:37
【问题描述】:

阅读以下资源后,我可以在 Next.js 上登录和注销用户:

但我无法确定是否可以使用 auth0/nextjs-auth0 库删除用户。

我还查看了模块的处理程序here

我是否认为无法使用 @auth0/nextjs-auth0 库删除用户?

如果是,删除用户的首选方式是什么?我想允许用户单击浏览器中的按钮将自己从 Auth0 中删除。

此时,我正在考虑使用node-auth0 库来执行此solution

 management.users.delete({ id: USER_ID }, function (err) {
    if (err) {
      // Handle error.
    }
 
    // User deleted.
  });

但它需要一个节点后端,我有点想避免这种情况。即便如此,这是最好的解决方案还是有更好的解决方案? Auth0 生态系统非常庞大。

2020 年 10 月 27 日编辑:将尝试在 Next.js 的“无服务器”功能中使用 node-auth0 库,以允许用户在周末删除他们的帐户。 Next 的runtime configuration 隐藏了秘密。如果这不是最好的方法,请告诉我。谢谢。

【问题讨论】:

  • @LawrenceCherone 我正在关注 Nextjs 在其 runtime configuration 上的文档以隐藏秘密
  • 你想隐藏秘密,所以你必须实现一个后端(足够小),它可以是一个单独的项目或使用 Next.js API 路由(允许你在服务器端构建后端Next.js)。

标签: node.js authentication next.js auth0


【解决方案1】:

我相信您的意思是通过“删除用户”来注销用户。因为如果你想从数据库中删除一个用户,你必须有节点服务器来处理数据库连接。如果要注销用户,请在“pages/api/v1”中创建一个 logout.js。在 next.js 中,serverless 函数或 api 函数都写在“pages/api”中。

import auth0 from "/utils/auth0"; 
// auth0 file is where you set the configuration for the auth0.

export default async function logout(req,res) {
  try {
    await auth0.handleLogout(req, res);
  } catch (error) {
    console.error(error);
    res.status(error.status || 400).end(error.message);
  }
}  

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-09
    • 1970-01-01
    • 2014-07-04
    • 1970-01-01
    • 2019-10-19
    • 1970-01-01
    相关资源
    最近更新 更多