勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

Lightbox.jsでCSP(コンテンツセキュリティポリシー)エラーが発生した際の対応方法

   2024/02/20  JavaScript サーバー

CSP(コンテンツセキュリティポリシー)設定を行っているサーバーでLightboxを使用すると「data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==」がどうのこうのというエラーが発生した。以下に対応方法をメモ。

 

data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==とは

調べてみると1x1pxのblank.gif画像らしい。これをdataURI化して使用している為、今回はCSP設定にひっかかった模様。

 

対応方法

CSP設定を変更すればいいが、今回はサーバー設定変更は出来ない事情があった。なのでペイントツール等で1x1pxのblank.gifファイルを作成してファイルにアップロード。そしてlightbox.jsの以下部分を書き換える。

#書き換え前
<img class="lb-image" src="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==" />

#書き換え後(画像のパスは適宜変更)
<img class="lb-image" src="blank.gif" />

 - JavaScript サーバー

  関連記事

バニラJavaScriptでinputタグのtypeをtext⇔passwordに変更する方法

チェックボックスの状態によってinputタグのtypeをtext⇔passwor ...

jQueryプラグインでクリップボードにコピーする方法(clipboard.js)

ページ上のボタンをクリックすることで特定の文章をクリップボードにコピーしたかった ...

Chart.jsで描写したグラフを画像としてダウンロードさせる方法

サイト内にChart.jsでグラフを描写し、ボタンやリンクをクリックすることで当 ...

Leafletで表示したマップにジェスチャーハンドリングを追加する方法(Leaflet.GestureHandling)

GoogleMapをズームする際にPCだと「Ctrl+スクロール」、スマホだと「 ...

JavaScriptの「pako」ライブラリでGzip圧縮したデータをPHPで展開する方法

先日、JavaScriptの「pako」ライブラリで文字列やオブジェクト(連想配 ...