【问题标题】:(Closed) Uncaught TypeError: Cannot call method 'download' of undefined(已关闭)未捕获的 TypeError:无法调用未定义的方法“下载”
【发布时间】:2013-03-05 06:48:24
【问题描述】:

重要提示:Google 在 Chrome 27.0.1448.0 dev-m 中修复了此问题

我编写了一个 Chrome 扩展程序,它从当前查看的站点中提取某些 url,然后下载其中的一个子集。该扩展基于https://developer.chrome.com/extensions/samples.html 上的“下载选定链接”示例。 在过去的 3 个月里,我的代码运行良好。我上次使用它是在 2 天前 - 今天我开始使用它

问题:

Uncaught TypeError: Cannot call method 'download' of undefined

当尝试下载一个url就行了

chrome.downloads.download(
    {url: visibleLinks[i],filename: visibleNames[i] + '.mp3'},
    function(id) { 
        pending = pending - 1;
        if (pending == 0) {
            window.close();
        };
    }
);

清单文件中似乎包含了所需的权限:

"permissions": [
    "downloads", "tabs", "https://*/*", "http://*/*"
]

我用什么:

  • Chrome 的最新开发版本:27.0.1444.3 dev-m(同样的问题也出现在 27.0.1438.7 dev-m)

我尝试了什么:

  • 记录 url 和文件名传递给 chrome.downloads.download 调用。两者都可以。
  • 在论坛上搜索类似问题。不幸的是,我在我的代码中找不到问题(或者至少找不到从哪里开始的线索)。
  • https://developer.chrome.com/extensions/samples.html 下载示例“下载选定链接”扩展并尝试使用它(在将其 0 字节 icon.png 替换为其他图标后)。结果:它只是重现了错误。

同样的问题,不同的帖子:

发布到 Google 的问题:

【问题讨论】:

    标签: javascript api google-chrome download typeerror


    【解决方案1】:

    Google 似乎在最新版本中使用了下载 API。自更新以来,我自己的扩展程序也遇到了类似的问题。唯一的解决方案是等到他们发布修复程序。对不起:(

    编辑: 我已向 Google 提交了错误报告。你可以关注here

    【讨论】:

    • 他们似乎在 2 天前 (14.03) 刚刚更新了开发频道。不过让我烦恼的是——谷歌博客states最新版本是27.0.1438.8,我的Chrome显示我有27.0.1438.7 dev-m(它也说这是最新版本)。
    • @QuteBits Canary 版本似乎有同样的问题,我希望谷歌能尽快修复它。 :(
    • 很遗憾,您发布的问题仍被 Google“未确认”(无论这意味着什么)。猜猜我们需要以某种方式引起他们的注意。
    • @QuteBits 有什么想法吗?
    • 我想是通过打电话/写信给在谷歌 Chrome 上工作的人(将他们链接到这个或问题页面)。
    猜你喜欢
    • 2012-02-23
    • 2012-08-27
    • 1970-01-01
    • 2013-01-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多