美文网首页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