2009-05-05 14 views
4

私はAjaxでウェブページを作ろうとしています。Ajax、perl、およびJSONを簡単に一緒に使用できますか?

例:

  1. 私はシンプルなポストをトリガーのPerl/CGUファイルを作成します。

    ファイル:?..test.cgi名=トーマス

    テキストバック:あなたの名前はトーマスです!

  2. 投稿を使用できるHTMLファイルを作成しますが、ページをリロードする必要があります。 テキスト入力とボタンを使用します。

どうすればAjax、Perl、JSONを簡単に使用できますか? これはどのように一緒に動作するのですか?

のHTML + Ajaxの/ JavaScriptのCALLのPerl + "JSON-perlの文字列" RETURN-TOのAjax-JSONは、CONVERT - > Htmlの

答えて

12

JSONの場合はCPAN JSON moduleをお試しください。

XMLHttpRequestを使用するには、IBMの素晴らしいチュートリアルをお勧めします。あなたは、おそらく最も興味を持つだろう

Mastering Ajax, Part 1: Introduction to Ajax

2回の記事では、これらの2つです:

Mastering Ajax, Part 10: Using JSON for data transfer

Mastering Ajax, Part 11: JSON on the server side

は、あなたが全体の11回シリーズusing this search linkを得ることができます。

+0

非常に良い答えをありがとう.. :) – jeje1983

1

あなたの主な目標は、あなたがリモートスクリプトを試みることができるページを更新するために、リフレッシュを避けるためにある場合XMLのXMLHttpRequestオブジェクトを使用します。

これに関する詳細here

+0

は、[OK]を..それは..おかげで、何かの始まりです。 – jeje1983

4

アプリケーションでJSON(HTMLの代わりにJSONモジュールをCPANで使用できます)を返すだけで済みます。つまり、text/htmlの代わりにapplication/jsonのContent-typeヘッダーが必要です.JavaScriptでそのJSONを使用する必要があります(jQueryやPrototypeなどのJavascriptライブラリを使用してください)。

3

jqueryは、非常に簡単なajaxとJSONサポートをAPIで提供し、すべてのXMLHttpRequestオブジェクトを処理します。 jQuery

1

新しいCPANモジュールYoteを試してみてください。これはJSON rpc経由でjavascriptオブジェクトをperlにバインドします。ここで

は、クライアント上での例です:

サーバー

package Hello; 
use base 'Yote::AppRoot'; 

sub hello { 
    return "Hello World"; 

1; 

クライアント

$.yote.init(); 
var hello_app = $.yote.fetch_app('Hello'); 

alert(hello_app.hello()); 
    // outputs "Hello World" 
関連する問題