iOSでPDFを開くとWebKitBlobResoureエラーとなる

iOSでWebKitBlobResoureエラー

iPadなどでPDFファイルを表示する処理をしている場合に、

「操作を完了できませんでした。(WebKitBlobResoureエラー1)」

のようなエラーが出てファイルが開けない場合があります。

これはblob型のファイルを開こうとしてエラーが出ているのですが、原因はiOSのバグである可能性があります。私の場合はiOS11から12にアップデートしたタイミングで以前開けていたPDFが開けなくなっていました。

この場合、blobで開こうとしていたデータをbase64文字列にして開くようにすると解決しました。

window.open(base64_data, "_blank", "location=no,enableviewportscale=yes");

base64文字列からPDFファイルを表示するにはwindow.openを使います。

base64_dataには表示させたいbase64文字列を指定します。

iOSのアップデート後からファイル表示でエラーが出ている場合は、上記の方法を試してみてください。

コメント