计算机网络理论之【HTTP】
作者:互联网
1.http全称是什么?
Hyper Text Transfer Protocol
2.Http是一类怎么样的协议?
HTTP是一个简单的请求-响应协议。
3.URL全称是什么?
4.URL用于什么,由什么组成?
URL(Uniform Resource Location统一资源定位符),可以帮助我们唯一定位互联网上的某一个资源,相当于是互联网资源的身份证号。URL的五个元素包括在一个简单的地址中:
- 传送协议。
- 服务器。(通常为域名或者IP地址)
- 端口号。(以数字方式表示,若为HTTP的默认值“:80” HTTPS的默认值“:443”可省略)
- 请求资源路径。
- 传递数据。(在URL中传递数据是以key=value的结构进行数据绑定,以“?”字符为起点,每个参数以“&”隔开,再以“=”分开参数名称与数据,通常以UTF8的URL编码,避开字符冲突的问题)
5.URI是什么?
Uniform Resource Identifier
URI是个纯粹的句法结构,用于指定标识Web资源的字符串的各个不同部分。他不属于定位符,因为根据该标识符无法定位任何资源URI只是一种概念,怎样实现无所谓,只要它唯一标识一个资源就可以了。
6.URN是什么?
Uniform Resource Name
其目的是通过提供一种途径,用于在特定的命名空间资源的标识,以补充网址。
7.HTTP协议的请求发什么内容?
三部分request
- request line
- request header
- request body
- 请求行一般怎么写?
GET /course/id/18.html?a=3&b=4 HTTP/1.1
9.请求头说明什么内容?
请求头用于说明是谁或什么在发送请求、请求源于何处,或者客户端的喜好及能力。服务器可以根据请求头部给出的客户端信息,试着为客户端提供更好的响应。请求头中信息的格式为key:value。
10.请求体描述了什么?
客户端传递给服务器的数据。
- GET和POST的区别(重要,面试常问)
- GET在浏览器回退时是无害的,而POST会再次提交请求。
- GET产生的URL地址可以被Bookmark,而POST不可以。
- GET请求会被浏览器主动cache,而POST不会,除非手动设置。
- GET请求只能进行url编码,而POST支持多种编码方式。
- GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。
- GET请求在URL中传送的参数是有长度限制的,而POST则没有。对参数的数据类型GET只接受ASCII字符,而POST即可是字符也可是字节。
- GET比POST更不安全,因为参数直接暴露在URL上,所以不能用来传递敏感信息。
- GET参数通过URL传递,POST放在Request body中。
12.http的响应由几部分组成?
Response消息也由三部分组成:第一部分叫Response line、第二部分叫Response header、第三部分叫Response body。
13.响应行一般返回什么?
响应行:HTTP/1.1 200 OK 有个状态码。
14.状态码的种类?
5类。
15.常见状态错误码
常见状态码及含义
200 - 请求成功,已经正常处理完毕
301 - 请求永久重定向,转移到其它URL
302 - 请求临时重定向
304 - 请求被重定向到客户端本地缓存
400 - 客户端请求存在语法错误
401 - 客户端请求没有经过授权
403 - 客户端的请求被服务器拒绝,一般为客户端没有访问权限
404 - 资源未找到,客户端请求的URL在服务端不存在
500 - 服务端出现异常
和请求消息相比,响应消息多了一个“响应状态码”,它以“清晰明确”的语言告诉客户端本次请求的处理结果。
16.http的无状态怎么理解?
HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。为了解决HTTP协议无状态,于是,两种用于保持HTTP连接状态的技术就应运而生了,一个是Cookie,而另一个则是Session。
1.http1.1与http1.0有什么区别?
1.1中最重要的一个特点是支持“长连接”,即“一次连接可以多次请求”。
19.如何实现长连接?
标签:HTTP,请求,GET,URL,理论,计算机网络,POST,客户端 来源: https://www.cnblogs.com/black-worrior-2000/p/16626331.html