Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Plugins Chrome NPAPI使其下载url的方法_Plugins_Google Chrome_Google Chrome Extension_Npapi_Firebreath - Fatal编程技术网

Plugins Chrome NPAPI使其下载url的方法

Plugins Chrome NPAPI使其下载url的方法,plugins,google-chrome,google-chrome-extension,npapi,firebreath,Plugins,Google Chrome,Google Chrome Extension,Npapi,Firebreath,我最近开始使用FireBreath来完成一些简单的任务:下载一个点击过的url。是否有内置的方法或其他东西,我可以用它将url添加到Chrome的本机下载队列?或者至少加载一个另存链接为。。对话框(也可以)?将以下HTTP头与内容一起发送 Content-Disposition: attachment 可选择使用;filename=“此处的filename”如果您想使用FireBreath下载已单击的URL,则无法获得下载对话框;如果您需要下载对话框,为什么要使用FireBreath 获取下载

我最近开始使用FireBreath来完成一些简单的任务:下载一个点击过的url。是否有内置的方法或其他东西,我可以用它将url添加到Chrome的本机下载队列?或者至少加载一个另存链接为。。对话框(也可以)?

将以下HTTP头与内容一起发送

Content-Disposition: attachment

可选择使用
;filename=“
此处的filename

如果您想使用FireBreath下载已单击的URL,则无法获得下载对话框;如果您需要下载对话框,为什么要使用FireBreath


获取下载对话框的最简单方法是将window.location设置为要下载的URL,然后等待浏览器自动弹出对话框;您可以使用FireBreath或javascript来实现这一点,其工作方式与此相同。

您可以使用本机操作系统调用来显示保存对话框;例如,在Mac上使用NSSavePanel。不过,这不会将下载交给浏览器,它只会为您提供一个用户选择的下载文件名。你还是得自己下载


NPAPI无法告诉浏览器使用其UI开始下载。这将是一个扩展API,如果它存在的话(如果它不存在的话,你会想要提交请求),而不是NPAPI的一部分。

我没有访问服务器的权限。这在Chrome for MP3和其他插件定义的扩展中不起作用(例如,它们拦截和播放)。。那么当Flash使用FileReference.download()方法下载文件时,它是如何显示对话框的呢?正如smorgan所建议的,大概Flash使用本机操作系统调用创建了自己的对话框。我明白了,非常感谢。现在我明白了你的意思,当你描述了一个MACIMF方法,其他人正在寻找答案时,我想出来了:首先,使用XHR(JavaScript)下载文件,然后将下载的字符串传递给NPAPI,以便保存到文件(这是C++部分),因此意味着我只能在文件中自动保存NAPPI。