1

我正在为使用下载 API 的 Google Chrome 进行扩展。我想从网站下载 .jpg 文件。

我在清单中使用了这些权限:

"permissions": ["downloads", "*://www.thatsite.com/*"]

我正在使用的命令是:

chrome.downloads.download({"url":"https://www.thatsite.com/images/image1.jpg"});

这给出了以下错误

“downloads.download 期间出错:URL 无效。”

任何想法如何解决这个问题?

4

1 回答 1

0

我尝试使用以下代码,它按预期工作。我希望你不在稳定频道。

把你的完整代码,问题完全出在 URL 上。

您可以参考以下代码作为参考

参考

清单.json

使用清单文件注册浏览器操作权限。

{
    "name": "Download Demo",
    "description": "http://stackoverflow.com/questions/14560465/chrome-downloads-download-gives-error-during-downloads-download-invalid-url",
    "manifest_version": 2,
    "version": "1",
    "browser_action": {
        "default_popup": "popup.html"
    },
    "permissions": [
        "downloads",
        "*://www.google.co.in/*"
    ]
}

popup.html

添加<script>了符合CSP的文件。

<html>

    <head>
        <script src="popup.js"></script>
    </head>

    <body>
        <button id="download">Download</button>
    </body>

</html>

popup.js

只需将URL传递给download API.

document.addEventListener("DOMContentLoaded", function () {
    document.getElementById("download").addEventListener("click", function () {
        chrome.downloads.download({
            "url": "http://www.google.co.in/images/srpr/logo3w.png"
        }, function () {
            console.log("downloaded");
        });
    });
});
于 2013-01-28T16:31:07.137 回答