发送 Auth0 无密码电子邮件 link 时,如何设置重定向 uri?

When sending an Auth0 passwordless email link, how do you set the redirect uri?

我正在通过 C# 管理创建用户 Api。使用无密码,这会自动导致电子邮件发送出去。那部分效果很好!

当我点击电子邮件中的 link 时,它会弹出我的 Auth0 实例,我收到 "Oops! Something went wrong" 消息...在查询字符串中,我可以清楚地看到 redirect_uri 是空的,我认为这一定是问题所在。按 F12,这似乎得到了确认 - 它在名为 VerifyRedirect 的东西上失败了。

那么我该如何设置 redirect_uri?我正在使用 C# SDK,但我没有看到在 UserCreateRequest 中设置它的方法。我也没有在仪表板中看到它。我错过了什么?

这是我的测试代码:

 var request = new UserCreateRequest()
 {
     Connection = "email",
     Email = email,
     EmailVerified = false,
     VerifyEmail = true,
     FirstName = first,
     LastName = last,
     FullName = first + " " + last,                                
     AppMetadata = new
     {
         roles = "Admin"
     }
 };

 // Just dodging async while I test - remember, this part works.
 var result = client.Users
                    .CreateAsync(request)
                    .GetAwaiter()
                    .GetResult();

当您通过管理 API 创建用户时,重定向 URI 将设置为客户端中第一个可用的回调 URL。您可以检查查询字符串中的客户端 ID 以确定客户端并在其设置中添加重定向 URI。

请注意,您不必像这样实际创建用户来启动电子邮件的无密码流程。如果您使用 Passwordless​Email​Request 对象,您可以显式设置客户端 ID 和重定向 URI(在 AuthenticationParameters 内),因此它们不会被隐式推导。