2012-04-20 8 views
0

Google Chromeの拡張機能を使って、特定のページをPDFに変換しています。この機能を実現するために、私はページのHTMLをダウンロードし、JavaScriptを介してNPAPI DLLに渡します。ここで変換が行われ、PDFファイルが作成されます。Google Chrome拡張機能のウェブページのHTTPSリソースをダウンロードする

タイプhttp://*のページに対してこの機能を実装しましたが、タイプhttps://*のページでは機能しません。そのWebページのHTTPSリソース(CSS、イメージなど)をダウンロードし、NPAPI DLLに渡す前にHTMLを変更する必要があります。

Chromeでどのように実行できるかを説明するリンクが見つかりませんでした。私にいくつかの提案をお願いします。

答えて

1

あなたは受け取ったエラーメッセージを引用していませんが、あなたの拡張機能はHTTPSにアクセスできないと思います。 manifest.jsonを確認してください。"http://*/*""https://*/*"の両方を"permissions"の下に指定する必要があります。

ドキュメント:permissions in the manifestmatch patterns

+0

Firefoxと同様の拡張機能を使って、Firefox固有のAPIを使用してDOMをダウンロードし、https images/css/etcをダウンロードしました。データを別々にchrome.tabs.executeScriptを使用してcontent:document.getElementsByTagName( 'html')[0] .outerHTMLをリクエストすると、ページに埋め込まれたHTTPSリソースが取得されません。 manifest.jsonファイルを確認しましたが、既に権限が設定されています(https:// */*)。基本的には、私がログインしている間にGmailのWebページなどの拡張機能を使用してPDFファイルに変換する必要があります。 –

+0

あなたのソースコードはWebページと一致しません。 Btw、それは 'document.documentElement.outerHTML'でなければなりません。 –

+0

はい、私のNPAPI DLLが取得するDOMは、Webページを変換する主な仕事をする別のDLLに渡されます。 HTTPSリソースが埋め込まれたそのようなドキュメントを開くと、「Acrobatはxyz.comへの接続を許可しません」というエラーがAcrobatから出されます。私はWeb Technologiesで少し弱いので、問題を詳細に理解することができません。 Mozilla FirefoxプラグインのためにHTTPSリソースを個別にダウンロードし、DLLに渡す前にHTMLコードを修正しなければならないことを知っています。 PS:変更されたdocument.getElementsByTagName( 'html')[0] .outerHTML by document.documentElement.outerHTML –

関連する問題