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

Supabase+NextJS 15用户创建异常:仅能创建一个账号

解决Supabase + NextJS 15只能创建单个用户的问题

首先明确:Supabase免费版完全支持多用户创建,问题肯定出在你的代码逻辑、配置或者错误处理上,按下面的步骤排查:

  • 检查用户创建的代码实现
    先确认你调用supabase.auth.signUp(或createUser)时,是不是动态获取了表单的邮箱和密码,而不是硬编码固定值。比如有没有把测试用的test@example.com写死在代码里,忘记改成从输入框取数据?另外,Supabase不允许重复的邮箱/手机号注册,每次测试要用不同的凭证。

  • 捕获并查看错误信息
    前端代码里一定要捕获signUp的错误,直接打印到控制台:

    const { data, error } = await supabase.auth.signUp({
      email: userEmail,
      password: userPassword,
    });
    if (error) console.error('创建用户失败:', error);
    

    同时去Supabase控制台的「Authentication」→「Logs」里看具体的错误详情,比如是邮箱已存在、密码不符合复杂度要求,还是请求被限流?

  • 检查Auth配置和限制
    登录Supabase控制台,进入「Authentication」→「Settings」:

    • 确认「Enable email signups」是开启状态,有没有设置邮箱域名白名单(如果设了,只有指定域名的邮箱能注册);
    • 查看「Rate Limits」,免费版默认每小时允许创建50个用户,正常测试不会触发,但可以确认下有没有被限流;
    • 检查有没有配置自定义的beforeSignUp Hook,里面如果写了限制逻辑(比如只允许特定用户注册),也会导致无法创建新用户。
  • 用最简代码测试
    写一个极简的测试页面,只保留邮箱、密码输入框和注册按钮,排除状态管理、路由拦截等其他代码的干扰,看看能不能正常创建多个用户。如果这个页面可以,说明问题出在你原有代码的其他逻辑上。

内容的提问来源于stack exchange,提问作者Tayari Kais

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.16 10:44:57