学习——HTTP

http:

HyperText Transfer Protocol : 超⽂本传输协议,和 HTML (Hypertext Markup Language 超⽂本标记语⾔) ⼀起诞⽣,⽤于在⽹络上请求和传输 HTML 内容.

请求报文:

响应报文:

HTTP的请求方法和状态码:

  • GET  : 获取资源,没有body (幂等)
  • POST:增加或修改资源,有body (不幂等)
  • PUT:修改资源,有body (幂等)
  • DELETE:删除资源,没有body (幂等)

幂等性:多次修改,结果一样

状态码:

  • 1xx:临时
  • 2xx:成功
  • 3xx:重定向
  • 4xx:客户端错误
  • 5xx:服务器错误

Header和Body

DNS查询    域名 <-----> IP

Host:⽬标主机。注意:不是在⽹络上⽤于寻址的,⽽是在⽬标服务器上⽤于定位⼦服务器的。

Content-Type、Content-Length

REST是什么?

一种规范使用HTTP的风格

 

习题:

1.【单选题】用户在浏览器地址栏输入地址后回车,一段时间后浏览器显示出页面,这背后发生了什么? 
A. 浏览器拼装 HTTP 报文并向服务器请求 -> 服务器处理请求并返回响应报文 -> 浏览器接收到响应报文后处理并使用渲染引擎来渲染出界面
B. 浏览器把地址栏的 URL 发送给服务器 -> 服务器把 URL 对对应的页面图片文件发回给浏览器 -> 浏览器接收到图片后显示出来

2.【单选题】一个 URL 如 http://api.qq.com/user/1 中,对于「HTTP 组装报文」来说可以拆成哪几部分 
A. ① 【http:】-> 协议类型 ② 【//api.qq.com/user/1】-> 路径
B. ① 【http:】-> 协议类型 ② 【//api.qq.com】-> 服务器地址 ③ 【/user/1】-> 路径
C. ① 【http:】-> 协议类型 ② 【//api.qq.com/user/】-> 路径 ③ 【1】-> 文件名

3.【单选题】HTTP 的请求报文分为哪几部分? 
A. 请求行、path、Headers、Body
B. 请求行、Headers、Body
C. 请求行、方法、Host、Body

4.【单选题】请求行由哪三部分组成?
A. method、path、HTTP 版本
B. method、path、Host
C. method、服务器地址、path

5.【单选题】HTTP 的响应报文分为哪几部分?
A. 响应头、响应码、响应信息
B. 状态行、响应头、Headers、Body
C. 状态行、Headers、Body

6.【单选题】响应报文的状态行由哪三部分组成?
A. HTTP 版本、API 版本、状态码
B. HTTP 版本、状态码、状态信息
C. HTTP 版本、Body 类型、状态码

7.【多选题】以下哪几项符合 GET 方法?
A. 用于获取资源A. 用于获取资源
B. 用于增加或修改资源B. 用于增加或修改资源
C. 仅用于修改资源C. 仅用于修改资源
D. 用于删除资源D. 用于删除资源
E. 幂等(即反复调用多次时会得到相同的结果)E. 幂等(即反复调用多次时会得到相同的结果)
F. 请求报文中包含 BodyF. 请求报文中包含 Body

8.【多选题】以下哪几项符合 POST 方法?
A. 用于获取资源A. 用于获取资源
B. 用于增加或修改资源B. 用于增加或修改资源
C. 仅用于修改资源C. 仅用于修改资源
D. 用于删除资源D. 用于删除资源
E. 幂等(即反复调用多次时会得到相同的结果)E. 幂等(即反复调用多次时会得到相同的结果)
F. 请求报文中包含 BodyF. 请求报文中包含 Body

9.【多选题】以下哪几项符合 PUT 方法?
A. 用于获取资源A. 用于获取资源
B. 用于增加或修改资源B. 用于增加或修改资源
C. 仅用于修改资源C. 仅用于修改资源
D. 用于删除资源D. 用于删除资源
E. 幂等(即反复调用多次时会得到相同的结果)E. 幂等(即反复调用多次时会得到相同的结果)
F. 请求报文中包含 BodyF. 请求报文中包含 Body

10.【多选题】以下哪几项符合 DELETE 方法?
A. 用于获取资源A. 用于获取资源
B. 用于增加或修改资源B. 用于增加或修改资源
C. 仅用于修改资源C. 仅用于修改资源
D. 用于删除资源D. 用于删除资源
E. 幂等(即反复调用多次时会得到相同的结果)E. 幂等(即反复调用多次时会得到相同的结果)
F. 请求报文中包含 BodyF. 请求报文中包含 Body

11.【单选题】Host 这个 Header 的作用是?
A. 在网络上寻址目标主机的 IP,并在找到目标主机后确认主机域名和端口
B. 仅用于寻址目标主机的 IP
C. 仅用于找到目标主机后确认主机域名和端口

12.【单选题】Content-Type 为 x-www-form-urlencoded 时,请求报文中 Body 的格式为以下哪种形式?
A. Encoded URL,即 name1=value1&name2=value2 的形式
B. 分多个部分传输每部分内容的形式,使用 boundary 对它们进行分隔
C. JSON 形式,如 {"name1":value1,"name2":value2}

13.【单选题】Content-Type 为 multipart/form-data 时,请求报文中 Body 的格式为以下哪种形式?
A. Encoded URL,即 name1=value1&name2=value2 的形式
B. 分多个部分传输每部分内容的形式,使用 boundary 对它们进行分隔
C. JSON 形式,如 {"name1":value1,"name2":value2}

14.【单选题】Content-Type 为 application/json 时,请求报文中 Body 的格式为以下哪种形式?
A. Encoded URL,即 name1=value1&name2=value2 的形式
B. 分多个部分传输每部分内容的形式,使用 boundary 对它们进行分隔
C. JSON 形式,如 {"name1":value1,"name2":value2}

15.【单选题】关于 HTTP 的状态码(Status code),图中的哪个描述是正确的?
A. ① 中的描述
B. ② 中的描述
C. ③ 中的描述
D. ④ 中的描述

16.【单选题】Android 开发者写的 HTTP 代码是怎么工作的?
A. Android 系统把开发者写入的 URL 发送给服务器,服务器处理后把开发者需要的数据直接返回给客户端,然后开发者的的回调代码对数据进行处理
B. Android 代码把开发者写入的 URL 和其他请求信息拼装成 HTTP 报文,以报文形式给服务器发送 HTTP 请求,服务器处理请求后返回标准 HTTP 报文,客户端处理报文后得到真正的数据,然后开发者的回调代码对输出进行处理

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值