May 05, 2005

Bookmarklet をサーバーサイドでメンテナンス

[ インターネット ]

Bookmarklet を配布するときの悩みの種が、一度配布したコードのメンテナンス。ウェブアプリケーションの一機能として Bookmarklet を使う場合にこの問題は結構厄介です。

例えば、はてなブックマークは自分のブックマークにブックマークを追加するのに Bookmarklet を使うのですが、何か Bookmarklet の JavaScrpipt のコード側にバグがあったとか、機能を追加したいという場合に毎回アナウンスして Bookmarklet をセットアップし直してもらう必要があります。(今のところ、そういったことはないのですが。) ウェブアプリケーション、というかサーバーサイドアプリケーションの最大のメリットである、徐々に機能を追加していくというフローに、配布型の Bookmarklet の仕組みが合わないんですね。

それが悩ましいので、はてなブックマークの Bookmarklet は、それを実行した先でサーバーサイドのプログラムを呼び出して、そちら側になるべく機能を集中させるようにしています。

が、今日素晴らしい情報を発見。

bookmarkletを作るとき、IEでは500文字ちょい、Firefoxでは2000文字ぐらい(?)の文字数制限がある。また、作った後に一行にまとめたり、デバッグしたりも大変面倒。でもそれがとても簡単な方法でどうにでもなることをインターフェイス!インターフェイス!の人に教わった。

表題は文字数制限をなくす、ということなのですが、実際のコードは document.createElement で script エレメントを作ってやってそこで src で外部ファイルを読むようにしてやるというもの。

この方法を使えば、JavaScript のコードそのものをサーバー側に置いた Bookmarklet が作れます。素晴らしい。

Posted by naoya at May 5, 2005 01:03 PM | トラックバック (5)  b_entry.gif
トラックバック [5件]
TrackBack URL: http://mt.bloghackers.net/mt/suck-tbspams.cgi/1550
bookmarklet文字数制限
Excerpt: 川o・-・)<2nd life - bookmarkletの文字数制限を無くす bookmarkle...
Weblog: Clouder::Blogger
Tracked: May 6, 2005 02:01 AM
[tech]Bookmarklet をサーバーサイドでメンテナンス
Excerpt: http://naoya.dyndns.org/~naoya/mt/archives/001683.html メモ。負荷とかどうなの?と思いつつも、いろいろ(っ...
Weblog: fs Log
Tracked: May 9, 2005 05:37 PM
Bookmarklet をサーバーサイドでメンテナンス
Excerpt:
Weblog: ナトガモ ブログニュース
Tracked: May 9, 2005 11:56 PM
Bookmarkletのプログラム本体をサーバー側に置く方法
Excerpt: NDO::Weblogさんのところで、使いやすいブックマークレットの開発方法に関する記事がありました。 ブックマークレットのプログラム本体はサーバー側に置く、と...
Weblog: hitoshi at 東京
Tracked: May 12, 2005 04:19 PM
Safari が JavaScript ファイルを動的ロードできない件
Excerpt: Mac OS X の標準ブラウザである Safari だと、createElem...
Weblog: bricklife.*
Tracked: May 18, 2005 10:40 PM
コメント [3件]

この手法がblog事業者みたいなところで公式にサービスされるとちょっと怖い面もあるかも。
URLが固定されている上にユーザー数が多いですから
・DNS毒もしくはhostsをいじる
・管理下のプロクシにプロクシ設定をさせて該当bookmarkletの差し替え
などで取っ掛かりをつけられそうですね。

[1] Posted by: otsune at May 5, 2005 03:01 PM [返信]

XMLHttpRequest でスクリプトをロードして eval とかでもいいかも(試してないですが)。

[2] Posted by: とおる。 at May 9, 2005 05:50 PM [返信]

そうそう、これ、Safari だと動かないっぽい(泣)

[3] Posted by: ooba at May 16, 2005 02:06 AM [返信]
コメントする









名前、アドレスを登録しますか?