Discourse 返回
您即将完成!我们已向abc@gmail.com发送了激活邮件。请按照邮件中的说明激活您的账户。
如果未收到邮件,请检查您的垃圾邮件文件夹。
即使邮箱地址已存在,仍会显示上述消息。我已在代码中进行了修改,在 userController 的 create 方法中将激活消息硬编码为“用户已激活”。但即便如此,显示的消息仍然是上述内容。有人能帮忙吗?
Discourse 返回
您即将完成!我们已向abc@gmail.com发送了激活邮件。请按照邮件中的说明激活您的账户。
如果未收到邮件,请检查您的垃圾邮件文件夹。
即使邮箱地址已存在,仍会显示上述消息。我已在代码中进行了修改,在 userController 的 create 方法中将激活消息硬编码为“用户已激活”。但即便如此,显示的消息仍然是上述内容。有人能帮忙吗?
抱歉,我不明白您写的内容。
我将详细说明。
我们的需求是:我们需要从我们的数据库批量注册用户到 Discourse。因此,我们不能让用户通过电子邮件激活他们的 Discourse 账户,因为我们在 Web 应用中是通过 Firebase 完成这一操作的。
为此,我对 Discourse 的代码进行了一些研究,并在 userController 的 activate 函数中注释掉了发送邮件的部分,直接激活用户,使其返回以下响应:
success: true, active: true, message: "用户已激活", user_id: user.id
但从昨天开始,我收到了如下响应:
success: true,
active: false,
message: ‘您快完成了!我们已向 abc@gmail.com 发送了激活邮件。请按照邮件中的说明激活您的账户。如果未收到,请检查您的垃圾邮件文件夹。’
我该如何检查我的用户注册 API 是否调用了 create 函数?是否存在某种缓存机制导致了这个问题?
除非您是在插件中进行修改,否则更新 Discourse 会覆盖您对 Discourse 代码所做的任何更改。这是否就是发生的情况?
您指的是哪个插件?我唯一的修改是在 Discourse 代码的 users_controller 中。您能直接帮我看看代码吗?我想通过代码进行调试。请告诉我用户注册的路由在哪里,确切地说是 /u 还是 /u.json。
另外,如果我在 userController 中使用 print 输出日志,我能在终端看到这些日志吗?目前我还没有看到。
我找到问题了。我在请求体中没有发送正确的 password_confirmation 和 challenge 参数,导致系统将其标记为可疑请求。我已经进行了必要的修改,现在可以正常工作了。但这两个参数的逻辑是什么?它们似乎一直在变化。