nDiki
2007年4月3日 (火)
■ WiKicker に JSON でのページ出力機能を追加

最近は DiKicker ばかりに手を入れていたが、久しぶりに WiKicker の改良も行っている。 しばらく前から実装を始めていた JSON 形式での出力機能が今日完成。
今までは WikiPage について
という2つの出力形式を持っていたので、JSON が加わることで3つめとなる。
@ サーバ側で WikiPage の構文解析まではやる
クライアントサイドの JavaScript でページの内容に合わせて様々な処理をできるように、サーバ側で構文解析まではしてあげるというのが主な目的。
JavaScript でまたパーサを書いてメンテしていくのも大変なので、その部分はサーバでやってしまおうかと。 構文解析した結果の解析木を JSON 形式で返して、JavaScript 側であとはお好きにという形。
@ CPAN にある JSON モジュールを使用
サーバ側の Perl プログラムには、構文解析をして解析木を作れるようになっている。 この解析木から Visitor パターンで JSON 形式を生成していく。
依存モジュールを増やすことを避けるべく、最初は自前で JSON 形式に変換していこうと思ったのだがやっぱり面倒だった。 ということで CPAN にあるモジュールをチョイス。
JSON 関連では JSON、JSON::Syck、JSON::PC などがあるが今回はインストールのしやすさを考えて pure Perl モジュールとして実装されている JSON を採用することにした。
Visitor クラスで解析木を無名ハッシュ/無名配列のツリーに変換して、JSON モジュールに流しこめば OK。
use JSON; my $json = JSON->new(pretty => 1); my $js = $json->objToJson($tree);
WiKicker のフレームワークにはフォーマット別に出力を切り換える機構があるので、これに JSON を追加して application/json で送るようにして完成。
ちなみに残念ながら JSON 1.07 は Perl 5.005_03 では make test が fail するので、NaneyOrgWiki では使えない。
- Rubric でプライベート SBS を立てるも 0.140 では日本語に不具合 (2006-07-22)
- WiKicker の Makefile.PL を Module::Inst... (2006-02-10)
- [ WiKicker ] hell mode - HTMLタグ付けブロックの導入 (2005-09-13)
- Perlプログラムのコードカバレッジ解析 (2004-06-03)
- [ WiKicker ] 日記機能開発開始 (2003-12-27)
■よく検索されるキーワード
torrent(184) expressions(85) 竹内まりや(62) ドラマ(32) x31(28) 動画(27) 手帳(25) 壁紙(25) linux(22) thinkpad(20) usb(19) windows(19) wiki(17) nikon(17) 久米田彩(16) tc-1(16) ボールペン(15) mp3(15) perl(15) 修理(15) 竹内まりあ(14) 無印(12) ほぼ日手帳(12) 写真(12) システム手帳(12) allinanchor:*.torrent(12) ノート(11) debian(11) porter(11) 方眼(10) 画像(10) ヨドバシカメラ(10) a6(10) truecrypt(10) 書き方(9) ダイソー(9) ssh(9) 使い方(9) rcs(9) 2009(9) onkyo(9) ほぼ日(9) ubuntu(9) 無料動画(9) 設定(9) ニコン(9) 作り方(9) 映画(9) skype(8) iphone(8) 蘇える金狼(8) 品川(8) ai(8) リフィル(8) ヨドバシ(8) 2008(8) nikkor(8) 冷蔵庫(8) 加湿器(8) -(8) 大井町(8) firefox(7) バッグインバッグ(7) expression(7) 秋葉原(7) 日本語(7) ヤマダ電機(7) 吉瀬美智子(7) dvd(7) ペリカーノ(7) 変更(6) 三条まゆみ(6) インストール(6) 提案書(6) gmail(6) ダウンロード(6) 万年筆(6) ポーター(6) 無料(6) 無印良品(6)■注目キーワード
購入 買った 発売日 フリー 無料 価格 値段 作り方 選び方 方法 設定 サンプル ダウンロード セール 限定 在庫 予約 穴場 比較 検証 レビュー 感想 評価 評判 使用感 使ってみた 口コミ 最新 MP3 動画 Torrent 解説 意味 用語集 参考文献 お薦め お勧め おすすめ 便利 Blog ブログ mixi 待受画面 修理Process Time: 3.085501s / load averages: 0.68, 0.45, 0.36
nDiki by WATANABE Yoshimasa (profile)
Powered by DiKicker
Base theme by Nana (for tDiary)



スポンサード リンク