美文网首页iOS 开发 Objective-C
第十一篇:Objective-C 知识回顾网络相关之一

第十一篇:Objective-C 知识回顾网络相关之一

作者: 望穿秋水小作坊 | 来源:发表于2019-12-02 11:09 被阅读0次
网络相关问题大纲

11.1.HTTP

问题一: HTTP 的请求方式有哪些?
  • POST
  • GET
  • PUT
  • DELETE
  • HEAD
  • OPTIONS
问题二: GET 和 POST 方式的区别(初级程序员的回答)?
  • GET 请求参数以?分割拼接到 URL 后面,POST 请求参数在 Body 里面
  • GET 参数长度限制 2048 个字符,POST 一般没有该限制
  • GET 请求不安全,POST 请求比较安全
问题三: GET 和 POST 方式的区别(更标准的回答)?

从语义的角度来回答

  • GET:获取资源(安全的,幂等的,可缓存的)
  • POST:处理资源(非安全的,非幂等的,不可缓存的)
  • 安全性:不应该引起 Server 端的任何状态变化
  • 幂等性:同一个请求方法执行多次和执行一次的效果完全相同
  • 可缓存性:请求是否可以被缓存(官方文档定义的一种规范,代理服务器会进行缓存)
问题四:你都了解哪些状态码,他们的含义是什么?
  • 1xx
  • 2xx:常见的 200 代表响应成功
  • 3xx:常见的 301 发生了一些网络重定向
  • 4xx:常见的 404 表示客户端的发起的请求可能存在问题
  • 5xx: 常见的 500 一般表示服务端代码出了一些问题
问题八:HTTP 有哪些特点?
  • 无连接:每进行一次 HTTP 通信,都要断开一次 TCP 连接,早期只是传输很小的文本,不存在问题。后面 HTTP 的普及,包含了大量图片和其他数据,每次请求完成都要断开 TCP 连接,无疑增加了通信量的开销。
  • 无连接的问题,通过HTTP1.1 提出的持久连接方法,任意一段只要没有明确提出断开连接,则保持 TCP 连接状态。
  • 无状态:HTTP 协议无法根据之前的状态进行本次请求的处理。优点是减少服务端的 CPU 以及内存资源的消耗。缺点就是加入某些信息需要登录后才能访问,由于无状态,每次服务端都不知道用户是否登录。
  • 无状态的问题,通过 Cookie 和 Session 的共同协作,让用户的发送的请求带有一些标记性的信息即可。
非持久连接和持久连接
问题九: 持久连接的头部字段?
  • Connection:keep-alive (使用持久连接的方法)
  • time:20(一次连接的最长等待时间)
  • max:10 (一次连接最多能发送多少个 http 请求)
问题十: 怎么样判断持久连接中的一个请求是否结束?
  • Content-length:1024
  • chunked,最后会有一个空的 chunked
问题十一: Charles 抓包原理是怎么样的?
也就是中间人攻击

相关文章

网友评论

    本文标题:第十一篇:Objective-C 知识回顾网络相关之一

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