简单的网框架(读书笔记)- - - - - - python

  
      <李> CS即客户端,服务器编程。
    客户端。服务器之间需要使用套接字约定协议,版本(往往使用的协议是TCP或者乌利希期刊指南),指定地址和端口,就可以通信了。
    客户端,服务端传输数据,数据可以有一定的格式,双方必须先约定好。   <李>   

    b编程,即浏览器,服务器开发。
    浏览器浏览器,一种特殊的客户端,支持HTTP (s)协议,能够通过URL向服务端发起请求,等待服务端返回HTML等数据,并在浏览器内可视化展示的程序。
    服务器,支持HTTP (s)协议,能够接受众多客户端发起的HTTP协议请求,经过处理,将HTML等数据返回给浏览器。
    本质上来说,b是一种特殊的CS,即客户端必须是一种支持HTTP协议且能解析并渲染HTML的软件,服务端必须是能够接收多客户端HTTP访问的服务器软件。
    废话开发分为2端开发
    客户端开发,或者称为前端开发. HTML, CSS javascript等
    服务器端开发,python有WSGI DJANGO烧瓶,龙卷风

      李   <李> HTTP协议
    练习:安装httpd服务,观察HTTP协议
    协议
    3.1 HTTP协议的无状态协议:
    同一个客户端的2次请求之间没有任何关系,从服务器端角度来说,它不知道这2个请求来自同一个客户端。
    3.2饼干
    1。键值对信息,
    2。浏览器发起每一个请求时,都会把饼干信息发给服务器端。
    3。是一种客户端。服务器端传递数据的技术。
    4。服务端可以通过判断这些信息,求确定这次请求是否和之前的请求有关联
    5。一般来说饼干信息在服务器端生产,返回给客户端。
    6。客户端可以自己设置饼干信息。   <李> URL组成
    URL可以说就是地址,统一资源定位符,每一个链接指向一个资源供客户端访问。
    例如:通过下面访的URL问网页。
    访问静态资源时,通过上面这个URL访问的是网站某路径下的index . html文件,而这个文件对应磁盘上的真实的文件。就会从磁盘上读取这个文件,并把文件的内容发回浏览器端。   <李> HTTP消息:
    消息分为请求,响应。
    请求:浏览器向服务器发起的请求
    反应:服务器对客户端请求的响应
    请求和响应消息都是由请求行,头消息报头,身体消息正文组成。
    请求:请求消息行:请求方法方法请求路径协议版本CRLF李   
  

请求方法方法
获取请求获取URL对应的资源
文章提交数据至服务器端
头和得到类似,不过不返回消息正文

  

常见传递信息的方式
1,得到方法使用查询字符串
通过查询字符串在URL中传递参数
2,发布方法提交数据
使用表单提交数据,文本框输入的名称属性分别为年龄、体重、身高
3, URL中本身就包含着信息
响应
响应消息行:协议版本状态码消息描述CRLF

  

状态码在响应头第一行
1 xx提示信息,表示请求已被成功接收,继续处理
2 xx表示正常响应
200正常返回了网页内容
3 xx重定向
301页面永久性移走,永久重定向。返回新的URL,浏览器会根据返回的网址发起新的请求请求
302年临时重定向
304资源未修改,浏览器使用本地缓存。
4 xx客户端请求错误
404 Not Found,网页找不到,客户端请求的资源有错
400请求语法错误
401请求要求身份验证
403服务器拒绝请求
5 xx服务器端错误
500服务器内部错误
502上游服务器错误,例如nginx反向代理的时候
无状态,有连接和短连接
无状态,指的是服务器无法知道2次请求之间的联系,即使是前2次后同一个浏览器也没有任何数据能够判
断出是同一个浏览器的请求。后来可以通过饼干,会话来判断。
有连接,是因为它基于TCP协议,是面向连接的,需要3次握的手,4次断开。
短连接,Http 1.1之前,都是一个请求一个连接,而TCP的连接创建销毁成本高,对服务器有很大的影响,所以,
自Http 1.1开始,支持维生,默认也开启,一个连接打开后,会保持一段时间(可设置),浏览器再访问该
服务器就使用这个TCP连接,减轻了服务器压力,提高了效率。
推荐图书《Http权威指南》

简单的网框架(读书笔记)- - - - - - python