2013年9月7日土曜日

Google ドライブのホスト機能が使えなくなった

Google ドライブのホスト機能を使うと、Webサーバーと同じようにhtmlを公開したり、Picasaのようにページに画像などを呼び出したりできます。


調べてみると、Host機能を使えるようになったのは意外にも、ごくごく最近の2013年02月05日になっています。 実は、今だから言えますが、それよりずっと前のドキュメントの初期のころから、いわゆる直リンが可能でした。

通常のHost機能は今まで通り使えます。騙すようなタイトルですいません。

もはや公開しても意味がないですが、以前の ダイレクトリンクする方法です。

通常の共有用のリンクはプレビュー画面になります。
http://docs.google.com/open?id=0ByuBxc6m0wH3NGJiNTFiMDAtYTNiZS00N2……

そのURLのopenのところををucに変更すると今までは直リンが可能でした。
http://docs.google.com/uc?id=0ByuBxc6m0wH3NGJiNTFiMDAtYTNiZS00N2……

現在は元のURLの構造自体が異なりますね。

このBlogへ、SWFファイルをいくつか<embed>で埋め込んで表示されていましたが、先月末に一斉に404になり表示されなくなりました。
仕様が変更されたと思われますが、手動対応可能な程度の数ですし、勝手に使っていたのだから文句のあろうはずもありません。
それに、現在は上述のHostが可能なので、そんなことをする必要もなくなりました。


無理な方法を使わなければならなかったのは、ベクター画像を使いたかったから。
ベクター画像というのは、ロゴなどの輪郭のはっきりした画像をクッキリ綺麗に表示でき、さらにファイルサイズを小さくできるので、ものにもよりますがWebに非常に向いています。

各プラットフォームで共通で表示できるベクター画像のフォーマットを調べていたら、結局SWFしかないという自分なりの結論に達しました。PDFでも可能なようでしたが、重いイメージがあったのとプラグインが入っていない可能性もあった為、却下。Flashなら、ほぼ100%の環境で表示可能でした。

今でこそ、SVGという選択肢がありますが、SVGが実際に使えるようになったのは、ここ1、2年の話です。それまではあるブラウザが対応していなかったせいで、全く普及せずエディタもないような状態でしたし、あるブラウザが表示できない以上使うこともできませんでした。(他のブラウザはとうの昔に対応していた)

当時、同じGoogle アカウント内のサービスで、SWFの置き場として利用可能だったのはGoogle Docsだけでした。
共有リンクの先はプレビュー画面しかないもののダウンロードが可能なので、なにか方法があるのではないかと、レスポンスを解析してダイレクトリンクのパラメーターを見つけてきました。(言ってしまうと対策される可能性があったため公表できなかった。)

現在はFlashは非推奨ですが、SVGにせよ他のファイルにせよ、Google Driveはファイル置き場として使えるのかという話になると、これがまた悩ましい。
BLOGに貼り付けてあるSWFは数KBの極めて小さなサイズにも関わらず、明らかに遅延がみられます (冒頭の画像がSWFです)。
GDriveのhostは、速い、もしくは遅くはないという情報も見られましたので、これは、SWFファイルのせいなのか、Bloggerとの関係なのか検証中です。

もし使えるようなら、今一番やってみたいのが、CSSの外部ファイル化です。現在はソースがゴチャゴチャしているのと、いらないものを読み込み過ぎているので、スマートにして表示の高速化を狙いたいです。
すでに実践されている強者もみえますので、もちろん参考にさせてもらいますが、やはり、充分に検証してからでないと踏み込めないですね。


後日、Google DriveにJavascriptやCSSを置きホスティングする方法の是非について検証したところ、かなりはっきりした結論に至りました。