You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Manifest V3下如何获取Thunderbird邮件附件?代码返回空数组求助

解决Thunderbird扩展获取邮件附件返回空数组的问题

1. 修复变量未定义的错误

你的代码中调用getAttachmentFile时使用了未声明的messageId变量,这会直接导致报错(虽然你的catch块可能没捕获到这个变量错误),需要替换为message.id(与调用listAttachments时使用的ID保持一致):

let file = await browser.messages.getAttachmentFile(message.id, att.partName);

2. 检查扩展权限

确保你的manifest.json中已声明messagesRead权限,这是访问邮件附件的必要权限,同时messageDisplay权限也不能少:

{
  "permissions": [
    "messagesRead",
    "messageDisplay"
  ]
}

3. 确认测试邮件包含附件

空数组可能是因为当前显示的邮件本身没有附件,先确认你用来测试的邮件确实存在可识别的附件(比如非内嵌图片、真实的文件附件)。

4. 验证邮件ID的正确性

你代码中同时打印了message.messageId和message.id,可以对比两者的值:Thunderbird的messages.listAttachments需要的是邮件的内部ID(即message.id),但如果存在字段混淆的情况,可以尝试替换为message.messageId测试是否能获取到附件。

内容的提问来源于stack exchange,提问作者Jan Bludau

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 11:52:10