任何人都可以解释如何通过消息或电子邮件将验证码从 serverpod 发送到 flutter 应用程序。而不是在终端中打印验证码
使用 Mailgun 、 Sendgrid 或任何 smtp 服务器将验证代码发送到 flutter 应用程序,而不是通过 gmail 发送代码。
这非常简单,您只需在
sendValidationEmail
回调中调用您想要使用的邮件服务 API 即可。
例如,如果使用 mailgun,您可以使用如下客户端库:https://pub.dev/packages/dart_mailgun
然后使用如下代码编写一封电子邮件:
import 'package:serverpod_auth_server/module.dart' as auth;
import 'package:dart_mailgun/client.dart';
...
var client = MailgunClient(domain: "my-mailgun-domain", apiKey: "my-mailgun-api-key");
auth.AuthConfig.set(auth.AuthConfig(
sendValidationEmail: (session, email, validationCode) async {
var messageClient = client.message
var params = MessageParams(
from: '[email protected]',
to: email,
subject: 'Serverpod code',
content: MessageContent.html('<h1>$validationCode</h1>'),
)
await messageClient.send(params)
return true;
},
));
有关更多配置,请参阅身份验证文档:https://docs.serverpod.dev/concepts/authentication/providers/email#server-side-configuration