A Day in the Life

ブラウザにローカルファイルを Drag & Drop でフォトライフにアップロードする Greasemonkey Script

HTML5 File API つかうとローカルファイルをブラウザに Drag したファイルをハンドリングして binary やら data スキームとして扱うことができ、Firefox 3.6 や Chrome 5 ですでに使えるというのを今さらながら知った*1ので、はてなフォトライフにローカルファイルをブラウザにドラッグするだけでアップロードできる UserScript を作ってみまんた。

WinXP + Firefox 3.6.3 で確認してますが OSX や Chrome5 などの環境で動くかは試してないので解りません。動作デモは以下の swf 動画を見てください。

なんかすごい便利な…!今まで右クリック拡張でパスを取得していちいちフォームに入れてたのが、ドラッグするだけでいけて直感的に。
また Flash は一切使わずにアップロードしてます。フォトライフ側のAPIを無理矢理使った感じなので、png/jpeg しかアップロードできず、また Exif のカメラ機種名などは無視される制限があります。
参考にしたドキュメントですが、以下の MDC のを読めば十分な感じです。

一応 progress イベントもとれるんですが、Flash のアップロードに比べていまいちイベントが発生しづらい感じはします。また POST + アップロードは xhr を生で触るとすごいやりにくいんですが、この辺はライブラリがたぶん解決してくれるようになるでしょう。File API 使った複数ファイルのアップローダライブラリとか出てきそうですね。
またすごい直感的に扱えるAPIなので、dropbox などのファイルクラウドサービスの Web インターフェイスにもどんどん適用されていきそうで楽しみです。なお Gmail ではすでに対応しており、添付ファイルをかんたんに追加できてびっくりしました。

*1:http://gihyo.jp/dev/column/01/browser/chrome5 で知りました。なおこの記事すごいまとまっていてとても参考になりました。

記事の一覧 >

関連するかもエントリー

Filesystem as a service としての Dropbox と静的サイト・Google Photos の代替として考える
Dropbox は古くはローカルファイルシステムの同期から始まり、ファイル共有機能、Dropbox Paper を使ったドキュメント共有・管理、Dropbox Passwords といった 1passwords 的なものまで、様々なソリューションを提供している。ファイルシステムは...
Dropbox は古くはローカルファイルシステムの同期から始まり、ファイル共有機能、Dropbox Paper を使ったドキュメント共有・管...
Google Photos へ WebP 圧縮したファイルをアップロード
2021年5月末で Google Photos の実質無料が終わってしまい、その代替をどうするか問題。Google Photos は適切な共有もでき、アプリも写真検索・閲覧用途でも使いやすく(顔認識もあるしね)、また今あるフォトストレージの中では一番なくならなさそう、ということで...
2021年5月末で Google Photos の実質無料が終わってしまい、その代替をどうするか問題。Google Photos は適切な共...
Google Photos の画像をダウンロードして、ブログの画像を別の画像に差し替える
Google Photos は様々な Web サイトから Google Photos にアップロードした写真を貼り付けできるjpgをママ貼り付けでき、サムネイルサイズも自由なサイズを選べ、Google の高速なサーバ経由で配信され、しかもアップロードしたオリジナルファイルもダウン...
Google Photos は様々な Web サイトから Google Photos にアップロードした写真を貼り付けできるjpgをママ貼り...