SuperAPI AI 工具集

bootstrap-postmark

部署与运维

查看项目

更新于 10-15 19:52

技能介绍

用途:在 Phoenix 1.8 应用中,将 Postmark 配置为 Swoosh 的生产邮件适配器。技能先审计目标应用的 Swoosh、Req 依赖、Mailer 模块及各环境配置文件,再按需补齐配置,避免重复改动。

主要能力:配置 prod.exs 使用 Swoosh.ApiClient.Req 并关闭本地存储;在 runtime.exs 的 if config_env() == :prod do 块内配置 Postmark 适配器、POSTMARK_API_KEY 以及来自 MAILER_FROM_NAME、MAILER_FROM_EMAIL 的发件地址;config.exs 默认使用 Swoosh.Adapters.Local 与默认发件元组;test.exs 使用 Swoosh.Adapters.Test 并关闭 API 客户端;补充 .env.sample 条目;按需创建 Mailer 模块。

用法:确保 mix.exs 含 {:swoosh, "~> 1.16"} 与 {:req, "~> 0.5"};无 Mailer 模块时创建 lib/<app>/mailer.ex,内含 use Swoosh.Mailer, otp_app: :<otp_app>;在各配置文件中加入对应配置,生产块内使用 System.get_env("POSTMARK_API_KEY") 等方法读取环境变量;验证时运行 mix compile --warnings-as-errors 并确保 mix test 通过。发信时从 Application.get_env(:<otp_app>, :mailer_from) 取发件信息,经 Swoosh.Email 组装后调用 Mailer.deliver()。开发环境可选在路由中加入 /dev/mailbox 预览,技能仅建议不自动添加。

限制:Postmark 需要已验证的发件签名或域名才能投递;配置需放入已有的生产条件块内,避免重复条件;缺失依赖、密钥或发件地址时需用户自行补齐。