Next.js中使用.env文件导致Mailgun.js返回401未授权问题
问题:使用.env文件后Mailgun返回401未授权错误?
需求背景
我需要开发一个简单的CRUD应用,当用户在待办事项列表中添加条目时,需完成两项操作:
- 将条目保存至Supabase数据库的对应表中;
- 通过Mailgun将该条目发送至指定邮箱。
技术栈为Next.js、Supabase、Mailgun,核心实现思路是结合两个已有的快速入门示例。
硬编码配置时功能正常
将相关代码文件放置在./components目录下,硬编码API密钥和域名后,在TodoList.tsx组件中调用sendEmail()方法,控制台输出{status: 200},指定邮箱能正常收到邮件。
使用.env文件后出现授权错误
但改用.env和.env.local文件读取API密钥和域名时,Mailgun返回{status: 401}(未授权)错误,尽管控制台能正确打印出密钥和域名,其余代码未做任何改动。
已进行的调试尝试
- 排查客户端/服务器组件影响,添加
'use client'或'use server'指令后问题仍未解决; - 尝试获取Mailgun更详细的错误信息,但未成功。
请问:为何使用.env文件会导致Mailgun.js的行为异常?
内容的提问来源于stack exchange,提问作者Jasper
相关产品推荐
相关产品推荐

