下载时获取文件内容

时间:2013-12-28 20:03:32

标签: javascript google-chrome google-chrome-extension

我正在构建Google Chrome扩展程序,以显示存储在csv文件中的一些数据。我知道这已经存在webrequest API

问题在于,有时文件是由php页面生成的,并且没有发送webrequest。

我查看过监听下载的download API。我现在能够知道下载完成的时间。

我的问题是:

我可以访问已下载或正在下载的文件的内容吗?


这是一个代码示例

chrome.downloads.onChanged.addListener(function(currentFile) {
    console.log(currentFile)
    // I would need to get the content of currentFile here.
});

1 个答案:

答案 0 :(得分:2)

无法使用Chrome扩展程序获取下载文件的内容。甚至无法通过webRequest API访问此类信息(虽然它是popular feature request)。

通常,如果您需要响应正文,则必须向服务器发送新请求(并希望Chrome从缓存中获取数据)。遗憾的是,对于非GET(例如POST)请求,该方法不太实用。没有通用的方法来解决这个问题。

如果您希望访问响应正文,则必须开发特定于您的应用程序的解决方案,例如:拦截特定页面的所有POST请求,并将数据发送回用户(以保存文件)。