//全文请看
http://wp.netscape.com/assist/net_sites/pushpull.html//在 google 上随便查到的,当然,用Server PUSH 不现实,一般都是用Client PULL 的吧
AN EXPLORATION OF DYNAMIC DOCUMENTS
--------------------------------------------------------------------------------
INTRODUCTION
This document explores the "server push" and "client pull" dynamic document capabilities of Netscape Navigator 1.1 (Windows, Mac, and Unix versions). Please send comments to pushpull@netscape.com. Also, if you are using either server push or client pull in a real-world application, please drop us a note at pushpull@netscape.com and let us know -- thanks!
Examples are given at the end, along with an important note on implementing server push CGI programs as shell scripts.
--------------------------------------------------------------------------------
THE GREAT IDEA
The general idea is that browsers have always been driven by user input. You click on a link or an icon or an image and some data comes to you. As soon as people saw they could do that, they wanted to give a server the ability to push new data down to the browser. (An obvious example is a stock trader who wants to see new quote data every 5 minutes.) Up until now, that hasn't been possible.
Netscape Navigator 1.1 gives content creators and server administrators two new open standards-based mechanisms for making this work. The mechanisms are similar in nature and effect, but complementary. They are:
Server push -- the server sends down a chunk of data; the browser display the data but leaves the connection open; whenever the server wants it sends more data and the browser displays it, leaving the connection open; at some later time the server sends down yet more data and the browser displays it; etc.
Client pull -- the server sends down a chunk of data, including a directive (in the HTTP response or the document header) that says "reload this data in 5 seconds", or "go load this other URL in 10 seconds". After the specified amount of time has elapsed, the client does what it was told -- either reloading the current data or getting new data.
In server push, a HTTP connection is held open for an indefinite period of time (until the server knows it is done sending data to the client and sends a terminator, or until the client interrupts the connection). In client pull, HTTP connections are never held open; rather, the client is told when to open a new connection, and what data to fetch when it does so.
In server push, the magic is accomplished by using a variant of the MIME message format "multipart/mixed", which lets a single message (or HTTP response) contain many data items. In client pull, the magic is accomplished by an HTTP response header (or equivalent HTML tag) that tells the client what to do after some specified time delay.
We'll explore client pull first...
【 在 JulyClyde (七月) 的大作中提到: 】
: 我坚信HTTP是不能连接客户端的
--
FROM 60.178.69.*