zoukankan      html  css  js  c++  java
  • HTTP协议学习笔记

    模型


    HTTP请求包括:

    1. 请求行(请求方法)
    2. 请求头(消息包头)
    3. 请求正文
    例子:

    POST /login.html HTTP/1.1 //请求行,POST为请求方法,/login.html为请求的页面,最后为HTTP协议版本

    HOST:www.xxxuser.com  //这个及以下为请求头,当然实际不止这么少
    User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.63 Safari/537.36
    //这里有个空白行,代表请求头结束
    username=admin&password=admin //请求正文,不一定有


    下面是访问百度的请求头



    HTTP响应包括:

    1. 响应行
    2. 响应头(消息报头)
    3. 响应正文(消息主题)
    例子:

    HTTP/1.1 200 ok//响应行
    Date:Thu,28 Feb 2015 07:34:47 GMT //这行及以下为响应头
    Server:BWS/1.0
    Content-length:4199
    Content-type:text/html;chartset=utf-8
    Cache-Control:private
    Expiress;Thu,28 Feb 2015 07:34:47 GMT
    Cache-Encoding:gzip
    Set-Cookie:H_PS_PSSID=2022_1438_1944_1788;path=/;domain=.xxxx.com
    Connection:Keep-Alive
    //空白行,代表响应头结束


    下面是访问百度的响应头



    利用telnet手工模拟HTTP请求

    1.打开windows的控制台,

    输入telnet www.baidu.com 80 (默认的端口23没开放)

    为什么后面还要加个80呢,这是请求80端口的意思,另外还有的话就是23端口没打开,如下图:


    输入telnet www.baidu.com 80 后如下图


    2.按下组合键 Ctrl+]


    3.按一下回车


    4.输入HTTP请求(手速要极快【估计只能顶级打字员能行】,不然会遗失主机的连接(通俗来说就是断开了连接) ,我们还是乖乖打好复制粘贴吧,这里面只能用右键选择粘贴,不能用键盘快捷键)

    example:

    GET / HTTP/1.1
    HOST:www.baidu.com

    输完或者粘贴完敲两下回车!!!!

    POST / HTTP/1.1
    HOST: www.baidu.com 


    HEAD / HTTP/1.1
    HOST: www.baidu.com  


  • 相关阅读:
    netty集成springboot
    NIO-BufferAPI
    python专题知识追寻者对OS的理解
    python专题文件操作
    我终于学会了使用python操作postgresql
    跟着知识追寻者学BeautifulSoup,你学不会打不还口,骂不还手
    那些不懂hystrix的秘密
    如何成为一名Web前端开发人员?
    css剪裁GIF背景图片动画特效
    css 变量教程
  • 原文地址:https://www.cnblogs.com/cnsec/p/13286586.html
Copyright © 2011-2022 走看看