美文网首页
如何理解web通信?

如何理解web通信?

作者: tomokokawase | 来源:发表于2017-03-21 14:45 被阅读0次

    分析URL结构

    我们实际应该要把浏览器与服务器交互的过程,看作是一个长距离文件传输的过程,根据Unix提出的思想,一切皆是文件,服务器做的事情,只是储存这些文件,并在我们提出要求时,查询并找到这些文件,再发送给客户端浏览器实现渲染的过程。而这些交互过程需要一个统一的规范,也就是协议,Internet使用的是HTTP协议。而传递文件前,发出的请求或做出的回应,便是请求/回应行,这是对用户查询行为的一种翻译。用户的行为可能体现在与浏览器表单的交互,也有可能是直接修改URL。

    1.URL的组成部分由 协议 + 主机名(:端口(访问本地时可指定))+文件目录 组成

    例如:http://www.baidu.com/ 可看做是 http协议 + www.baidu.com主机 +/ 文件目录组成

    在文件目录中

    使用?代表查询字符,当页面URL出现当前字符时,说明发送或返回到了包含查询信息的页面。?q=xxx (q是query即查询的缩写,但有的网页需要使用tx?query=xxx之流)

    使用#代表页面锚点,当页面出现这一部分时,这一部分并没有和主机发生交互,是在客户端浏览器内部实现了定位。

    2.HTTP协议 

    当与服务器发生交互时,客户端会发送一条请求行,开头格式为

    方法 + 请求的页面在主机文件目录中的位置 +协议版本

    例如:GET /index HTTP/1.1

    意思就是查询 服务端文件目录下/index文件 使用HTTP1.1协议版本 

    方法有get/post     文件目录中不会出现#符号  协议版本可能也会有1.0

    3.完成一条请求头

    GET /index HTTP/1.1 方法和文件目录和版本

    Host:www.example.com 请求的主机位置

    User-Agent:chrome 你的代理服务器/也可以随便写

    还可以按照自己的意愿再请求头中加一些自定义内容,不过需要遵守格式规范

    4.完成一条回应头

    HTTP:/1.1  200 OK                             分别对应 协议版本 +状态码+状态码原因

    Date:Tue Mar 2012 04:33:33 GMT

    Server: Apache/2.2.3                            服务器版本

    Content-type: text/html                          返回的内容类型

    Content-Length:  1539                           返回的内容实体长度

    //常见状态码 200 OK 302 Found 404 Not Found 500 Server Error

    5.Web Application原理简析

           在90年代,服务器中需要返回的页面资源全部被称为static静态资源,不需要

    服务端的加载,而是预先写好的,因而不能存在交互功能,比如,网络聊天室,

    个人博客等,都无法实现,就像上世纪的地区黄页一样。

           而在如今,需要被访问的页面和交互效果都是由动态请求申请获取的。因而

    他们都是动态的被加载出来的(build on the fly)。而加载这些动态页面,动态

    生成内容的媒介,则被称为网络应用程序(Web Application)。

    6.在查询有空格的字段时,系统会为空格加上+号

    7.使用get方法可以使用缓存,而post方法并没有,get方法不应该改变服务器

    情况,post则被允许可以。

    相关文章

      网友评论

          本文标题:如何理解web通信?

          本文链接:https://www.haomeiwen.com/subject/jjwenttx.html