Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.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
Javascript 为Google Chrome扩展下载网页的HTTPS资源_Javascript_Google Chrome_Google Chrome Extension - Fatal编程技术网

Javascript 为Google Chrome扩展下载网页的HTTPS资源

Javascript 为Google Chrome扩展下载网页的HTTPS资源,javascript,google-chrome,google-chrome-extension,Javascript,Google Chrome,Google Chrome Extension,我正在为GoogleChrome编写一个扩展,将给定页面转换为PDF。为了实现这一功能,我下载了页面的HTML,并通过JavaScript将其传递给NPAPI DLL,在那里进行转换并创建PDF文件 我已经为http://*类型的页面实现了此功能,但它不适用于https://*类型的页面。我需要下载该网页的HTTPS资源(CSS、图像等),并在将其传递到NPAPI DLL之前修改HTML 我找不到任何好的链接来解释如何为Chrome做到这一点。请给我一些建议。您没有引用收到的错误消息,但我猜您的

我正在为GoogleChrome编写一个扩展,将给定页面转换为PDF。为了实现这一功能,我下载了页面的HTML,并通过JavaScript将其传递给NPAPI DLL,在那里进行转换并创建PDF文件

我已经为
http://*
类型的页面实现了此功能,但它不适用于
https://*
类型的页面。我需要下载该网页的HTTPS资源(CSS、图像等),并在将其传递到NPAPI DLL之前修改HTML


我找不到任何好的链接来解释如何为Chrome做到这一点。请给我一些建议。

您没有引用收到的错误消息,但我猜您的分机根本不允许访问HTTPS。请检查您的
manifest.json
,它应该在
“权限”下同时列出
“http://*/*”
“https://*/*”


文档:,.

我们为Firefox编写了一个类似的扩展,它使用Firefox特定的API分别下载DOM和https图像/css/等数据。当我使用chrome.tabs.executeScript请求一个内容:document.getElementsByTagName('html')[0].outerHTML时,我不会获取嵌入在页面中的HTTPS资源。我已经检查了manifest.json文件,它已经设置了权限(https://*/*)。基本上,我想让我的扩展在我登录时为Gmail网页工作,并将其转换为PDF文件。什么意思,你得到的源代码与网页不匹配?顺便说一句,它应该是
document.documentElement.outerHTML
。是的,我的NPAPI DLL获得的DOM被传递给另一个DLL,该DLL主要负责转换网页。当我打开一个嵌入了HTTPS资源的文档时,Acrobat出现了一个错误,说“Acrobat不允许连接到xyz.com”。我在Web技术方面有点弱,因此无法详细理解问题。我只知道我们必须为我们的Mozilla Firefox插件单独下载HTTPS资源,并在将其传递到DLL之前修改HTML代码。PS:Changed document.getElementsByTagName('html')[0].outerHTML by document.documentElement.outerHTMLOkay,我想我现在理解了这个问题。因此,我能够获取页面的HTML并将其传递给DLL进行转换。当HTML包含具有https://*类型的链接/源的图像、CSS或其他数据时,就会出现问题。当此HTML传递给Acrobat时,它无法下载图像、CSS等,因为它无法访问HTTPS链接。因此,我们在JS级别下载数据,将其写入临时文件,并使用HTML附加额外的Adobe标记,其中包含HTTPS linktemp文件映射,Acrobat从中下载数据。