发送 OTP
import { SMSGo } from '@orynlabs/smsgo'
const smsgo = new SMSGo({ apiKey: process.env.SMSGO_KEY })
const otp = await smsgo.send({
phone: '+5511999990000',
message: '您的 SMSGo 验证码是 184502,5 分钟内有效。',
})
console.log(otp.id, otp.status)送达 webhook
// 签名 webhook 已发送到您的端点
import { verifyWebhookSignature } from '@orynlabs/smsgo'
app.post('/webhook/smsgo', (req, res) => {
const signature = req.headers['x-smsgo-signature']
const payload = JSON.stringify(req.body)
// 处理前请验证 HMAC-SHA256 签名
const isValid = verifyWebhookSignature(payload, signature, process.env.SMSGO_WEBHOOK_SECRET)
if (!isValid) return res.status(401).send('无效')
console.log(req.body.status, req.body.phone)
res.status(200).send('ok')
})96% 的用户 更愿意通过短信接收验证码
— 调查来源: Twilio.
常见问题
SMSGo 的短信 OTP 如何工作?
通过 REST API 或 Node.js、PHP、Python、Go SDK 发送验证码。用户几秒内收到并在应用中输入,签名 webhook 会实时报告送达和失败。
验证码需要多久送达?
大多数 OTP 验证码会在 10 秒内送达。智能路由和运营商故障转移可提高巴西境内的送达率。
测试需要银行卡吗?
不需要。创建账户即可获得 3 条免费短信,无需银行卡或月费;测试模式也不会消耗真实额度。
API 支持 2FA 吗?
支持。SMSGo 适用于双重认证、密码找回、交易确认以及任何需要一次性短信验证码的流程。
发送 OTP 如何符合 LGPD?
SMSGo 提供自动退订、TLS 加密、最少日志和受控保留;测试模式还可避免使用生产数据。
准备实施 OTP?
创建免费账户并获得 3 条短信,用于测试 SMSGo 验证 API。
创建免费账户