1、URL地址
协议->
HTTP:超文本传输协议,除了用来传输文本,还可以传输HTML页面、CSS文件、JS文件、图片、音视频...
HTTPS:SSL,它比HTTP更加安全一些
FTP:文件传输的,我们买了个服务器,我们要把一些文件上传到服务器上,我们就需要使用FTP上传了

域名->
一级域名 www.qq.com
二级域名 sports.qq.com
三级域名 kbs.sports.qq.com

可以把我们每个部门的产品分不同的服务器进行管理,我们作为客户访问不同的域名其实找到的是不同的服务器->减少服务器的压力、有利于服务器的维护、有利于每个产品的SEO和权重...

端口号:0~65535
HTTP协议默认的端口号是80
HTTPS协议默认的端口号是443
->如果你的端口号是默认的值,我们在访问的时候端口号不需要添加
->如果你的端口号不是默认的值,访问的时候必须加
->为啥会出现端口号?因为一台服务器上可能会发多个产品,可能会有多个域名,用户通过域名进来了,但是具体找谁我们需要分清

具体的目录文件和URL后面的参数值
->?后面的都是传递给当前页面的参数值(问号传参),如果需要传递多个参数,中间中&隔开,#是当前页面的锚点定位
->https://www.baidu.com:80/user/index.html?name=aaa&age=17&sex=1#userName (#userName锚点定位,定位到当前页面中ID为userName这个标签的位置)

2、HTTP
->超文本传输协议:它能够把客户端要告诉给服务器端的东西带给服务器端,也可以把服务器给客户端的内容带给客户端,用它就可以实现客户端和服务器端的文件内容的传输

->事物:n+1个事件

->起始行/首部/主体
->起始行:描述这个HTTP的基本请求
->首部:通用首部(请求和响应都有的) 请求首部 响应首部 扩展首部(自定义的) 实体首部(描述响应/请求内容的)
->实体:一般很少见,请求或者响应的内容

[Headers]
General->通用头(Request/Response都有的)
Request URL:http://matchweb.sports.qq.com/kbs/hotMatchList?callback=getHotMatchList&_=1456903174906 请求的服务器详细地址
Request Method:GET 请求的方式,GET是到服务器获取内容,POST是向服务器发送内容...
Status Code:200 HTTP状态码 ok HTTP状态码描述
Remote Address:123.151.148.59:80 服务器的IP地址和端口号

Request Headers->
GET /kbs/hotMatchList?callback=getHotMatchList&_=1456903174906 HTTP/1.1
Host: matchweb.sports.qq.com
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache
User-Agent: Mozilla/5.0...
Accept: */*
Referer: http://kbs.sports.qq.com/
Accept-Encoding: gzip, deflate, sdch
Accept-Language: zh-CN,zh;q=0.8
Cookie:

Response Headers->
HTTP/1.1 200 OK
Server: nginx/1.4.4-omg 当前服务器是用什么样的服务发布的(IIS、apache、nginx...)
Date: Wed, 02 Mar 2016 07:20:05 GMT 当前请求回来的服务器的时间,时间格式是英国的格林尼治时间
Content-Type: application/json 当前请求回来的数据的格式
Transfer-Encoding: chunked
Connection: keep-alive
Keep-Alive: timeout=120 当前是用了120ms请求回来的(整个HTTP的请求时间)
Vary: Accept-Encoding
X-Server-Ip: 10.248.116.169
X-Cached: EXPIRED
Content-Encoding: gzip

3、HTTP状态码
->100初始化/正在请求 HTTP2.0已经删除了1xx系列的

->200请求成功
->202接收

->301永久转移(一般是不同的服务器转移--降低了搜索引擎的权重 第一次检测做了永久的转移,第二次就不在进行搜索了)
->302临时转移(一般是相同的服务器临时转移)
注意:上述是Location地址之间的跳转

->303永久重定向 负载均衡
->307临时重定向
注意:上述是服务器之间的跳转

->304走缓存 (接收响应数据的时候走的是服务器缓存数据)
->响应首部:
->last-modified 最后一次改变的时间 GMT(英国格林尼治时间)
->e-tag 实体内容 一串通过校验内容进行sha(1/2)算法的字符串
->请求首部:
->if-modified-since GMT
->if-none-match 一串通过校验内容进行sha(1/2)算法的字符串

->400 参数错误
->403 禁止访问没权限
->404 没有找到
->417 发送资源文件过大

->500 未知服务器错误
->503 服务器并发数过多 (只能连接100个,过来200个,剩下的100个就会被告知503)

4、HTTP请求方式
->get 从服务器获取
->post 向服务器发送->注册页面:用户填完信息,有很多的信息,我们把这些信息都获取到,然后通过Ajax中的POST请求,在请求主体中把这些信息都传递给后台服务器,服务器把这些信息存储到数据库中("表单提交")

->put 增加
->delete 删除
->head、options、trace、connection、track...

->get系的特征(get、delete、head)
1、会把给服务器发送的数据放到url后面 ->http://matchweb.sports.qq.com/kbs/hotMatchList?callback=getHotMatchList&_=1456903174906 "?后面写的内容都是同过get请求传递给服务器的"

2、有大小限制
因为get系把数据都放到url里面,而浏览器会对url的长度有大小限制, 所以造成了get系对传输的数据大小有限制
ie->2K
firefox->7k
chrome->8k

3、会被缓存(服务器和浏览器自带的缓存)
->我们一般不用缓存,因为自带的缓存很多情况导致,第二次请求的内容一直和第一次一样,最新的内容请求不回来
->如果想要快,我们做的所有的缓存都是自己单独用程序设计出来的而不是浏览器自带的缓存机制

4、不安全,因为明文发送 ->在浏览器的控制台中我们可以查看到URL后面的参数值,所以不安全

->post系(post、put)
1、会把给服务器发送的数据放到请求主体里
2、不会有大小限制
因为post系把数据放到请求主体里,而请求主体是没有大小限制的
3、永远不会被缓存
4、相对于get系安全许多,因为不是明文发送

->为什么get系会被缓存而post系不会被缓存?
1、因为get系设计的初衷是用来从服务器拉取数据的。含有两个特点:
数据可能很大,数据可能会重复。正因为有这两个特点,所以造成了get系会被缓存
post系设计的初衷是往服务器发送数据的,所以不需要缓存

->HEAD、DELETE这两个方法比较特殊:他们成功只返回202,不会返回200

$.ajax({
type:'get',
url:'',
data:{name:''}, 向服务器端发送的数据
dataType:"json",
cache:false,是否可以缓存
async:true,同步
username:,用户名
password:,密码
timeout:,超时时间
headers:{},设置请求头
});

Http中涉及到的知识点总结的更多相关文章

  1. bootstrap实战练习中涉及的知识点(很有用哦!)

    看的有关视频做的笔记,对bootstrap中涉及的知识点做了一定的解析,很有用哦!(新手上路,有不合适的地方可以指出哦!) 下面进入正题: Bootstrap是当下最流行的前端框架(界面工具集) 特点 ...

  2. dbms_job涉及到的知识点

    用于安排和管理作业队列,通过使用作业,可以使ORACLE数据库定期执行特定的任务. 一.dbms_job涉及到的知识点1.创建job:variable jobno number;dbms_job.su ...

  3. iOS开发中关于UIImage的知识点总结

    UIImage是iOS中层级比较高的一个用来加载和绘制图像的一个类,更底层的类还有 CGImage,以及iOS5.0以后新增加的CIImage.今天我们主要聊一聊UIImage的三个属性: image ...

  4. C#中易混淆的知识点

    C#中易混淆的知识点 一.引言 今天在论坛中看到一位朋友提出这样的一个问题,问题大致(问题的链接为:http://social.msdn.microsoft.com/Forums/zh-CN/52e6 ...

  5. c/c++程序设计涉及的一些知识点

    c/c++程序设计涉及的一些知识点 c中的printf函数 main(){ int b = 3; int arr[]= {6,7,8,9,10}; int * ptr = arr; *(ptr++) ...

  6. JAVA项目中常用的异常知识点总结

    JAVA项目中常用的异常知识点总结 1. java.lang.nullpointerexception这个异常大家肯定都经常遇到,异常的解释是"程序遇上了空指针",简单地说就是调用 ...

  7. Hybrid App 应用开发中 9 个必备知识点复习(WebView / 调试 等)

    前言 我们大前端团队内部 ?每周一练 的知识复习计划继续加油,本篇文章是 <Hybrid APP 混合应用专题> 主题的第二期和第三期的合集. 这一期共整理了 10 个问题,和相应的参考答 ...

  8. PHP开发中涉及到emoji表情的几种处理方法

    最近几个月做微信开发比较多,存储微信昵称必不可少 可这万恶的微信支持emoji表情做昵称,这就有点蛋疼了 一般Mysql表设计时,都是用UTF8字符集的.把带有emoji的昵称字段往里面insert一 ...

  9. 开发过程中 的一些 补充知识点 + 关于mysql中的日期和时间函数?

    参考: https://www.jb51.net/article/23966.htm https://yq.aliyun.com/articles/260389 mysql中的 日期格式是: HHHH ...

随机推荐

  1. Django的Context和RequestContext

    参考:http://www.dannysite.com/blog/38/ Django的模板渲染中,Context可以用来传递数据,一个Context是一系列变量和值的集合,它和Python的字典有点 ...

  2. c++标准库中几个常见的数据结构的区别和应用规则

    转载自http://www.lifecrunch.biz/archives/202 vector和built-in数组类似,它拥有一段连续的内存空间,并且起始地址不变,因此它能非常好的支持随即存取,即 ...

  3. ShortestPath:Wormholes(POJ 3259)

    田里的虫洞 题目大意:就是这个农夫的田里有一些虫洞,田有很多个点,点与点之间会存在路,走过路需要时间,并且这些点存在虫洞,可以使农夫的时间退回到时间之前,问你农夫是否真的能回到时间之前? 读完题:这一 ...

  4. Python Elasticsearch api

    描述:ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口.下面介绍了利用Python API接口进行数据查询,方便 ...

  5. min-height在安卓下不起作用

    正常情况下,min-height可以当height使用 如: <div class="father"> <div class="child"& ...

  6. Machine Schedule(poj 1274)

    题目大意:有n个奶牛和m个谷仓,现在每个奶牛有自己喜欢去的谷仓,并且它们只会去自己喜欢的谷仓吃东西,问最多有多少奶牛能够吃到东西 输入第一行给出n与m 接着n行 每行第一个数代表这个奶牛喜欢的谷仓的个 ...

  7. 封装自己的ajax函数

    url为具体的url地址, onsuccess为正常返回时的结果, onfail为错误返回时的结果 function MyAjax(url,onsuccess,onfail) { var xhr = ...

  8. 什么是网络爬虫(Spider) 程序

    Spider又叫WebCrawler或者Robot,是一个沿着链接漫游Web 文档集合的程序.它一般驻留在服务器上,通过给定的一些URL,利用HTTP等标准协议读取相应文档,然后以文档中包括的所有未访 ...

  9. svn 创建

    1.ps aux | grep svn 杀掉进程 2.svnadmin create /svnrepertory/SVNwangping 创建svn仓库; 3.修改3个文件 4.svnserve -d ...

  10. Xamarin.Android开发实践(十一)

    Xamarin.Android之使用百度地图起始篇 一.前言 如今跨平台开发层出不穷,而对于.NET而言时下最流行的当然还是 Xamarin,不仅仅能够让我们在熟悉的Vs下利用C#开发,在对原生态类库 ...