python web编程-概念预热篇
互联网正在引发一场革命??不喜欢看概念的跳过,注意这里仅仅是一些从python核心编程一书的摘抄
这正是最激动人心的一部分了,web编程
Web 客户端和服务器端交互使用的“语言”,Web 交互的标准协议是HTTP(超文本传输协议)。HTTP
协议是TCP/IP 协议的上层协议,这意味着HTTP 协议依靠TCP/IP 协议来进行低层的交流工作。它的
职责不是路由或者传递消息(TCP/IP 协议处理这些),而是通过发送、接受HTTP 消息来处理客户端
的请求。
HTTP 协议属于无状态协议,它不跟踪从一个客户端到另一个客户端的的请求信息,这点和我们
现今使用的客户端/服务器端架构很像。服务器端持续运行,但是客户端的活动是按照这种结构独立
进行的:一旦一个客户的请求完成后,活动将被终止。可以随时发送新的请求,但是他们会被处理
成独立的服务请求。由于每个请求缺乏上下文背景,你可以注意到有些URL 会有很长的变量和值作
为请求的一部分,以便提供一些状态信息。另外一个选项是“cookie”--保存在客户端的客户状态
信息。在本章的后面部分,我们将会看到如何使用URL 和cookie 来保存状态信息。
具有大型Web 站点的公司会将他们全部的
“Web 服务器” 放在ISP 那里。这种物理安放被称为“整合”,这意味着你的服务器和其它客户的服
务器一同放在ISP 处被“集中管理”。这些服务器或许为客户提供了不同的数据或者有一部分为应付
重负荷(高数量用户群)而设计成了可以存储重复数据的系统。小公司的Web 站点或许不需要这么
大的硬盘或者网络设备,也许仅有一个或者几个“整合”服务器安放在他们的ISP 处就可以了。
在任何一种情况下,大多数“整合”服务器被部署在大型ISP 提供的骨干网上,这意味着他们
具有更高的“带宽”,如果你愿意,可以更接近因特网的核心点,从而可以更快的与因特网取得连接。
这就允许客户端可以绕过许多网络直接快速的访问服务器,从而在指定的时间内可以使得更多的客
户获得服务。
有一点需要记清楚,Web 应用是网络应用的一种最普遍的形式,但不是唯一的也不是最古老的一
种形式。因特网的出现早于Web 近三十年。在Web 出现之前,因特网主要用于教学和科研目的。因
特网上的大多数系统都是运行在Unix 平台上的—一个多用户操作系统,许多最初的因特网协议至今
仍被沿用。
这里注意因特网和web是不一样的,因特网的出现要早于web
这些协议包括telnet(允许用户在因特网上登录到远程的主机上,至今仍用),FTP 协议(文本
传输协议,用户通过上传和下载文件可以共享文件和数据,至今仍用),Gopher(Web 搜索引擎的雏
形—一个在互联网上爬动的小软件“gopher”可以自动寻找你感兴趣的数据),SMTP 或者叫做简单邮
件传输协议(这个协议用于最古老的也是应用最广泛的电子邮件),NNTP(新闻对新闻传输协议)。
由于Python 的最初偏重就是因特网编程,除了其他一些东西外你还可以找到上边提及的所有协
议。可以这样区分“因特网编程”和“Web 编程”,后者仅包括针对Web 的应用程序开发,也就是说
Web 客户端和服务器是本章的焦点。
因特网编程涵盖更多范围的应用程序:包括我们之前提及的一些因特网协议,例如:FTP, SMTP
等,同时也包括我们前面提到的网络编程和套接字编程。