看看它如何运作
操作演示 · 虚构示例数据
创建公开 HTTPS 端点
添加公开 HTTPS URL 的 webhook。不接受 localhost、私有地址、URL 凭据、片段或重定向目标。
此演示不会更改您的账户。
阅读全部步骤
- 创建公开 HTTPS 端点
添加公开 HTTPS URL 的 webhook。不接受 localhost、私有地址、URL 凭据、片段或重定向目标。
- 名称
- Demo SMS receiver
- 端点
- https://example.com/sms-webhook
- 保存仅显示一次的密钥
显示时将密钥保存到服务器受保护配置。之后无法再次显示;不要放入工单或公开代码。
- 签名密钥
- ••••••••
- 验证原始正文签名
使用签名密钥对原始请求正文验证 HMAC-SHA256,并比较 x-smsred-signature。通过稳定的 x-smsred-event-id 去重。
- 签名标头
- x-smsred-signature: sha256=<hex>
- 事件编号
- x-smsred-event-id: DEMO-EVENT-42
- 验证
- HMAC-SHA256(secret, rawBody)
- 确认并处理重试
安全接受事件后及时返回 2xx。失败投递最多重试 8 次,使用同一事件编号;每个事件只处理一次。投递前会再次核对所有权。
- 首次投递
- DEMO-EVENT-42 → 2xx
- 重复投递
- 相同事件 ID → 不重复执行
- 管理 webhook
可修改名称或描述、暂时停用投递,或在不需要时删除。更改期间保持接收端去重与密钥处理一致。
- Webhook
- Demo SMS receiver
- 状态
- 已停用
添加公开端点
在开发者打开 Webhook 并添加名称、公网 HTTPS URL 和说明。localhost、私网地址、URL 凭据和重定向不适用,最终地址应直接可达。
创建后安全保存弹窗中的秘密值,复制会清除显示,不要依赖以后再读。与 API 密钥分开保管,不放公开代码。
验证原始请求体
事件以 JSON POST 到达,用秘密值对准确原始 body 算 HMAC-SHA256,对比 x-smsred-signature,格式 sha256=HEX_DIGEST。验证前不要解析后重新序列化,空白可改变签名,使用恒定时间比较。
x-smsred-event-id 是稳定标识。验证、去重、可靠保存/排队后及时返回 2xx。body 字段按当前合同。
重试和管理
非 2xx 或超时可退避重试最多八次,同事件可能多次到达,处理器需容忍重复。重定向不是成功的 2xx 回应。
表格支持编辑名称/说明、禁用和移除。禁用暂停,移除删除。消息按当前所有者投递,包含转让后。失败时查 HTTPS、签名和自己服务器日志,不假定面板有完整投递日志查看器。
需要账户帮助?
打开支持中心