最近经常看到关于“如何基于BS架构开发聊天程序”的问题,这里把写的一个简要实例代码贴出来。
那么BS的聊天系统,一般两种技术(各有优劣):
1、基于Ajax或子页面刷新的拉模型;
2、基于HTTP长连接的推模型。
因为Ajax的“拉模型”,比较常见,这里给出基于HTTP长连接的“推模型”:
由三个页面组成:
chatmain.jsp 框架页面,引入两个Frame页面,并负责创建聊天室;
chatwnd.jsp 聊天信息窗口,负责用服务器推的方式显示所有人的聊天信息;
chatsender.jsp 聊天发送窗口,负责发送自己想说的话。
注意:本样例主要是为了说明 “基于长连接的推模型”,在聊天室完备性上完全不具有参考意义。
【chatmain.jsp 框架页面】
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="java.util.*"%>
<%
// 这三句话只是为了防止浏览器缓存
response.setHeader("Cache-Control", "no-cache, no-store"); //HTTP 1.1
response.setHeader("Pragma", "no-cache"); //HTTP 1.0
response.setDateHeader("Expires", 0); //prevents caching at the proxy server
&nbs

本文介绍了如何基于BS架构开发聊天程序,重点讲解了利用HTTP长连接实现的服务器推模型。示例中包括三个页面:chatmain.jsp作为框架页面,chatwnd.jsp用于显示聊天信息,chatsender.jsp用于发送消息。此示例主要展示长连接的推模型工作原理,不关注聊天室的完整功能。
最低0.47元/天 解锁文章
1704

被折叠的 条评论
为什么被折叠?



