Cannot read properties of undefined (reading ‘digest’)

Angularを使用しているプロジェクトで、SHA256による暗号化メソッドをステージング環境にデプロイしたところ、以下のメソッド実行時にエラーが発生。

■エラーメッセージ

Cannot read properties of undefined (reading 'digest')

■該当メソッド

window.crypto.subtle.digest()

MDNの公式ドキュメントによると、digestメソッドは安全なコンテキストでのみ使用できるものとのこと。

つまりは、httpsで通信してね、という話。

ステージングではSSL化の対応は済んでいるものの、httpでアクセスしていたため、URLをhttpsに変えるだけで解消した。

ちなみに、安全なコンテキストとは、httpsでの通信の他に、localhostも含まれる。そのため、開発環境での検知をすり抜けてしまった。

コメント

タイトルとURLをコピーしました