美文网首页
HTTP:请求与响应

HTTP:请求与响应

作者: secret123 | 来源:发表于2018-11-02 17:45 被阅读0次

    HTTP 的作用就是指导浏览器和服务器如何进行沟通。每个电脑都有很多端口,每一个端口都要做指定的事情
      a. 浏览器负责发起请求
      b. 服务器在 80 端口接收请求
      c. 服务器负责返回内容(响应)
      d. 浏览器负责下载响应内容
    请求示例:

    curl -s -v -H "Frank: xxx" -- "https://www.baidu.com"

    用get请求百度:

    1.  GET / HTTP/1.1  /*动词+路径(无意义跟文件没有任何关系)+协议*/
    2.  Host:baidu.com  /*我想访问baidu.com */
    3.  Accpet:text/html /*我希望接收到的是html文件 */
    

    百度给的响应:

    1.  HTTP/1.1 200 OK   /*我是HTTP/1.1,ok,没有问题,你需要什么我可以给你什么*/
    2.  Content-Type:text-html;charset=utf-8  /* Content-Type的内容就是你想要的文件再给你一个字符集,方便你解释中文*/
    Content-Length:10000  /*我传给你的html长度是10000个字节*/
    3.  回车(\n)
    4.  <!DOCTYPE>
    <html>…</html>/*这个就是百度传给我们的文件内容,中间部分省略*/
    

    用POST 请求百度(登录百度):

    Post  /login HTTP/1.1  /*用post发请求来登录,用的是HTTP/1.1协议*/
    Host:baidu.com  /*登录百度*/
    Accept:application/json /*想要接收json*/
    Content-Type:application/x-www-form-urlencoded /*发内容给它*/
    Content-Length:10
    回车(\n)
    Username:fangfang&password:mima  /*这是我上传的内容*/
    

    百度给的响应:

    1.  HTTP/1.1 403 Forbidden  /*禁止登录*/
    2.  Content-Type: application/json
    Content-Length:200
    3.  回车(\n)
    4.  {“error”:密码错误}
    

    请求的形式总结:

    第一部分:动词 路径 协议/版本   HTTP/1.1
    第二部分:你要告诉访问的主机你想要什么
    第三部分:按回车(\n)
    第四部分:要获取/上传的数据
    

    响应的形式总结:

    第一部分:协议号/版本号  状态码  状态解释
    第二部分:访问的主机告诉你它给你了什么(第二部分是对第四部分格式的标注)
    第三部分:按回车(\n)
    第四部分:访问的主机传回给我们的文件内容
    

    get和post的区别:get是获取内容;post是上传内容

    用 Chrome 发请求:

    1. 打开 Network
    2. 地址栏输入网址
    3. 在 Network 点击,查看 request,点击「view source」就可以看到请求的前三部分了
    4. 如果有请求的第四部分,那么在 FormData 或 Payload 里面可以看到

    用 Chrome 查看响应

    1. 打开 Network
    2. 输入网址
    3. 选中第一个响应
    4. 查看 Response Headers,点击「view source」你会看到响应的前两部分
    5. 查看 Response 或者 Preview,你会看到响应的第 4 部分

    资源
    状态码详解

    相关文章

      网友评论

          本文标题:HTTP:请求与响应

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