如何轻松地将Ajax,perl和JSON一起使用?

时间:2009-05-05 11:05:45

标签: javascript html ajax perl json

我正在尝试使用Ajax创建一个网页。

示例:

  1. 我创建了一个触发简单帖子的Perl / CGU文件;

    文件:.. test.cgi?name = Thomas

    回文:你的名字是托马斯!

  2. 我创建了一个可以使用帖子的html文件,但页面必须重新加载。 我使用文本输入和按钮。

  3. 如何轻松地将Ajax,Perl和JSON一起使用? 这是它应该如何协同工作,但是如何?

    Html + Ajax / JavaScript CALL Perl +“JSON-perl-string”RETURN-TO Ajax CONVERT-JSON - > HTML

5 个答案:

答案 0 :(得分:12)

对于JSON,请尝试CPAN JSON module

对于使用XMLHttpRequest,我推荐IBM的这些精彩教程。

Mastering Ajax, Part 1: Introduction to Ajax

您可能最感兴趣的两篇文章是这两篇:

Mastering Ajax, Part 10: Using JSON for data transfer

Mastering Ajax, Part 11: JSON on the server side

您可以获得整个11部分系列using this search link

答案 1 :(得分:4)

您只需让您的应用程序返回JSON(您可以在CPAN上使用JSON模块)而不是HTML。这意味着你需要application / json的Content-type头而不是text / html然后你需要在你的Javascript中使用那个JSON(使用像jQuery或Prototype这样的Javascript库是你最好的选择)。

答案 2 :(得分:3)

jquery使用API​​提供非常简单的ajax和JSON支持,它为您处理所有XMLHttpRequest对象。 jQuery

答案 3 :(得分:1)

如果您的主要目标是避免刷新以更新页面,则可以使用XML中的XMLHttpRequest对象尝试远程脚本。

有关此here的详情。

答案 4 :(得分: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"