アップロードするファイルの事前チェックと、Chrome+Android+GoogleDrive の問題

こんにちは。福岡です。

ファイルをアップロードする時、制限されているファイルをアップロードしようとするのはシステムとして負荷もかかるので、できる限り「正しく」使って欲しいところです。一方で、「正しい」とはどんな条件をいうのかユーザが必ずしも認識できていないことはあり得るし、細かく注意書きを書けば書くほど読まれなくなります。そこで、Javascriptを使ってアップロードする前にファイルを検査する方法を探っています。

これは、今日では Javascript から Fie API を使って簡単にできるようになっています。制限サイズを超えていないか、拡張子のレベルで形式が合っているか、くらいはすぐにできます。

例えば以下の資料があります。
https://developer.mozilla.org/ja/docs/Web/API/File/Using_files_from_web_applications

WebClassでも、レポートファイルのアップロードでこれらを使ったチェックをやろうと思ったのがv11.8.2でした。が、問題が見つかって急遽キャンセルしたのがv11.8.2−2でした。

ほとんどの環境で動作していたのですが、Chrome + Android の環境で、Google Drive のファイルを指定してアップロードしようとする際に問題がありました。なぜか、アップロード前にJavascriptでファイルのチェックをすると、アップロードができなくなってしまいます。最近は学生もクラウドドライブ経由でレポート提出することも多いので、余計な混乱の元になりそうだったために元に戻してあります。

この問題は Chromium に報告してあり、現在、再現可能な問題として認識され、より詳細な調査をしよう、というステータスです。

https://bugs.chromium.org/p/chromium/issues/detail?id=1102021

早く治るといいなぁ。