LoginSignup
4
5

More than 5 years have passed since last update.

ElectronのWebviewでhttpなコンテンツを読みこませてmixed contentになってしまう問題への対応

Posted at

ElectronのWebviewでhttpsなページを表示させつつ、そのコンテンツ内でhttpなアイコンや画像などをロードさせたい場合があります。

しかし、そのままでは


Mixed Content: The page at 'https://hoge.example.com/hoge/' was loaded over HTTPS, but requested an insecure font 'http://fuga.httpsite.jp/image.jpg'. This content should also be served over HTTPS.

というようにmixed Contentなエラーが出てしまい表示が出来ません。JSなども同様ですね。

セキュリティ上正しい挙動ですが、どうしてもやりたい場合は以下のように設定します。
レンダラプロセス側でweb-frameを取得し、registerURLSchemeAsSecureでスキーマを指定します。


var webFrame = require('web-frame');
webFrame.registerURLSchemeAsSecure('http');

このようにすることで、Secureなものとして登録できるようなので、ロードできるようになります。
このregisterURLSchemeAsSecureはelectron-prebuiltが0.33.8では使用できず、0.36.7では使えるようになっていました。

4
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
5