您的位置:首页 > 理论基础 > 计算机网络

nodejs API之HTTP

2015-10-13 19:51 218 查看

HTTP概念

http是一种协议,互相通信的两个终端(不只是电脑)之间要遵循这种规则,才能建立通信。

输入网址到浏览器渲染完毕之间的流程:

Created with Raphaël 2.1.0网址网址浏览器浏览器操作系统DNS缓存操作系统DNS缓存本地host文件本地host文件宽带运营商宽带运营商根域服务器根域服务器com域com域网址域网址域嘿,我输入网址了那我看看我的DNS有没有缓存。抱歉没有有没有这个网址的IP我也没有有没有这个网址的IP我也没有(发送DNS请求)他们都没有,你那有没没有,我帮你问问(通过自身服务器发送迭代DNS请求,知道这个网址的IP吗我只知道com域的IP,你去问他吧(通过自身服务器发送迭代DNS请求,知道这个网址的IP吗不知道,我知道这个网址域的IP,(一般是域名提供商,比如万网)你知道这个网址的IP吗知道啊,给你找到了,给你找到了,给你终于找到了

Created with Raphaël 2.1.0输入网址浏览器自身DNS缓存是否有该网址IP浏览器http 3次握手http://www.google.comEndhttp://www.google.com本地host文件是否有该网址IP发送系统调用,获取IPyesnoyesno

连接流程就是:浏览器获取到IP以后,通过自身随机端口发送TCP链接请求,通过层层路由,可能还要经过防火墙,然后经过网卡,到达TCP/IP协议栈到达web终端,建立连接。

三次握手就是

Created with Raphaël 2.1.0浏览器浏览器服务器服务器001呼叫007?收到请回复007收到,001请指示给我来包烟

TCP/IP建立后,可以发送HTTP请求了 ,比如使用GET方法请求一个根域的一个域名,

服务器收到请求后,根据参数,返回相应的东西,比如一个网站的首页。

网页中用到的css,js,图片啊,也都是一个http请求

第二种理解

http可以分为请求和响应,都会发送一个请求头,和正文。

请求头:发送附加信息,内容类型,响应日期,状态码

正文:表单数据 文章等的东西了

使用浏览器调试工具查看,头和正文,一般重点关注请求方法,比如GET post 等了,还有就是状态码

1xx :表示请求正在处理

2xx :表示请求成功 200

3xx :重定向

4xx :请求错误 400 401 404

5xx :服务器有错误

剩下的就是慢慢来熟悉了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: