跳到正文
豫言包管理
← 全部包

豫言操作系统邮件发送适配 0.1.0

豫言 · 库

用云工 EMAIL 绑定的 send 实现邮件发送接口。

邮件发送云工适配

用云工 EMAIL 绑定的 send 实现接口:适配先在豫言里逐字符解码 UTF-8 并按规范校验地址、主题、正文(空白、控制字符、多收件人、CRLF 注入都在这里被拒绝),再用 云工调用方法安全 调用 send,把同步异常和 Promise 拒绝都转成(阴,固定原因),只从错误 JSON 里取名称而不取消息。传给 send 的对象由豫言 JSON 编码器生成,恰为 {from, to, subject, text}。

依赖宿主原语 `豫言_云工_授权绑定存在(种类, 名称)`(现由 宿主.mjs 提供,环境文字适配同用):先核对 许可[种类] 含该名,未授权抛出宿主错误(部署错误,豫言不可捕获),已授权则返回环境里该绑定是否为真值。现有的 云工绑定句柄 在绑定缺失时抛出宿主 JS 错误,豫言无法捕获,所以“已授权但当前部署没有配置该绑定”必须由这个原语先答复。适配在自己的模块里用 《《外调》》 声明它的包装;缺少该原语的旧宿主上每次发送都会以“未授权宿主能力”中止,一致性测试会在开头指出这一点。

真实本地 workerd(Wrangler 4.129.0,send_email 绑定配置了 allowed_sender_addresses)实测:send({from,to,subject,text}) 对许可的发件地址被接受,本地平台收到的 From、To、Subject 与正文文件逐字等于输入(含换行、引号、反斜线、emoji 与 CRLF);发件地址不在许可列表时 send 拒绝,错误名称为 Error,适配返回(阴,邮件发送失败:Error),不含任何地址;被本包校验拒绝的注入请求没有到达平台。综合场景见 ../消息队列/一致性验证/真实工作者/。

一致性验证/ 里有试验应用、真实 Wasm 的 Node 测试和复跑说明。

依赖

查看包配置

上传历史

当前上传修订:1 ·

  1. 上传修订 1
    下载 ZIP

包层级

父包:豫言操作系统适配

没有子包。