|  | 级别: 中级 Nicholas Chase , 自由撰稿人
2008 年 6 月 02 日 能够与同事和朋友进行即时消息(IM)通信是一种极大的便利,但出于安全性方面的考虑,有些环境却禁止在工作区使用即时消息客户端。本文中的练习解决了安全性方面的种种担心,向您展示了如何使用 Ajax 创建基于 Web 的 IM 客户端,这种客户端通过创建即时消息 bot 和对应的 Web 应用程序将 IM 通信量转变为纯 Web 通信量。虽然它不是一种生产应用程序,却展示了几种极好的 Ajax 技术,比如如何使用 Prototype 进行更简便的 DOM 处理以及如何轻松地一次或多次更新 Web 页面的某些部分。
在本教程中
本教程向您展示了如何使用 Ajax 创建基于 Web 的 IM 客户端,面向的读者是那些想要了解如何使用 Ajax 创建功能应用程序以及如何创建即时消息应用程序的开发人员。本教程使用了 Prototype JavaScript 库和 Jabber 即时消息服务器。您应该熟悉 Javascript、HTML 和 Java™ 编程。如果需要复习这些内容,请参看 参考资料 部分。 目标 在本教程中,您将使用 Prototype Javascript 库及 Jabber 服务器创建一个基于 Web 的即时消息客户端。创建完成后,您将可以选择您的好友列表中的用户并能通过 Web 页面向传统 IM 客户端上的用户发送(或接收)消息。 在本教程中,您将了解: - 如何安装一个完整的即时消息解决方案
- 如何创建即时消息 bot
- 如何使用 Java 代码发送和接收即时消息
- 如何使用 Jabber roster
- 如何创建能自动更新的 Ajax Web 页面
所有这些最终会给您带来一个能将即时消息通信量转变为纯 HTTP 的应用程序,这样您就不会遇到防火墙问题。
预备知识
熟悉 JavaScript 和 HTML 对于独立使用 Flapjax 是很重要的,但是任何 GUI 应用程序开发人员都能够理解本教程的大部分内容。本教程通过示例引导初级程序员掌握基础概念,同时介绍一些中级概念,以便将 Flapjax 与其他编程系统进行比较。
系统需求
本教程使用了如下工具,所有这些工具均在第一部分设置:
-
Openfire:一种可与之通信的即时消息服务。Openfire 是一种开源 Jabber 服务器,可运行于 Windows® 操作系统、MacOs 或 Linux® 之上。
-
Spark:一种即时消息客户端,可用来查看状态。Spark 是 Openfire 人员提供的一种开源 Jabber 客户端。
-
Smack:一种与 Jabber 服务器通信的方式。Smack Java API 提供了您所需要的全部功能。
-
Prototype:可用来创建和管理 Ajax 应用程序的 Prototype JavaScript 库。
-
Apache Tomcat:一种 Java Web 应用服务器,能够运行应用程序所需的 servlet。
-
Eclipse 或另外的 Java 环境:您将在本教程中构建 Java 应用程序,您尽可以使用 Java IDE,比如 Eclipse,它让您能够方便地直接在应用服务器上进行开发。或者也可以从 http://java.sun.com 下载 Java SDK。
学习时间
1 小时
格式 html
参考资源
- 有关使用 Ajax 创建聊天客户端的更多信息 — 没有使用外部 Jabber 服务器 — 请参见 “Ajax 和 XML: 将 Ajax 用于聊天”(Jack Herrington,developerWorks,2007 年 12 月)。
- “Ajax — 困惑者指南,第 1 部分: Ajax 工具和技术综述”(Gal Shachor et al.,developerWorks,2007 年 7 月)介绍了其中的某些工具,包括 Prototype。
- 获得有关 Eclipse 的信息并在 developerWorks 文章
“Eclipse 平台入门” 一览其丰富的历史(David Gallardo,developerWorks,2002 年 11 月)。
- 在 “Eclipse Europa 旋风之旅”(Chris Aniszczyk,developerWorks,2007 年 6 月)了解有关 Eclipse 的 Europa 版本的信息。
- 还没充分了解 Eclipse?请深入研读文章 “推荐 Eclipse 阅读清单”(Chris Aniszczyk,developerWorks,2006 年 6 月)。
-
developerWorks Ajax 资源中心 富含各种 Ajax 资源,包括到某些标准说明的链接:JavaScript、级联样式表(CSS)、HTML、XMLHttpRequest 对象和文档对象模型(DOM),可以帮助您立即上手。
- developerWorks Eclipse 专区 富含有关如何开发 Eclipse 应用程序的资源。
IBM 公司保留在 developerWorks 网站上发表的内容的著作权。未经IBM公司或原始作者的书面明确许可,请勿转载。如果您希望转载,请通过 提交转载请求表单 联系我们的编辑团队。 |  | |  |
|