美文网首页
请求&响应

请求&响应

作者: astak3 | 来源:发表于2018-09-13 10:33 被阅读0次

    UPL 统一标识标识符
    一般现在分为URL 和 URN
    URL:统一资源定位符,一般成为网址,唯一确定的位置
    URN:统一资源名称,唯一确定的名称

    URL 的各部分含义

    image

    DNS:输入域名 输出IP

    21 FTP服务
    443 HTTPS服务
    1080 代理服务器端口
    3306 MYSQL服务器
    80 HTTP服务

    请求实例

    curl -s -v -H "rrrr: xxx" -- "https://www.baidu.com"
    解释
    -s silent 不要显示进度条
    -v verbose 显示请求和响应,不加-v 只有响应
    -H "rrrr: xxx"响应头

    命令行输入命令后回车,看到:星号开头的是注释部分,大于号开始的是请求部分,小于号开头发是响应部分

    GET请求

    > GET / HTTP/1.1            //GET请求,第一个是 / 是根目录,协议是HTTP,版本号是1.1
    > Host: www.baidu.com
    > User-Agent: curl/7.52.1   //用的是什么软件发起的响应,curl软件,版本号是7.52.1
    > Accept: */*           //我接收你返回给我的任何内容
    > rrrr: xxx         //响应头
    > 
    

    POST 请求
    curl -X POST -s -v -H "rrrr: xxx" -- "https://www.baidu.com"

    > POST / HTTP/1.1       //发起的是POST请求,其他和GET请求都一样
    > Host: www.baidu.com
    > User-Agent: curl/7.52.1
    > Accept: */*
    > rrrr: xxx
    > 
    

    POST 请求 带数据
    curl -X POST -d "123456789" -s -v -H "rrrr: xxx" -- "https://www.baidu.com"

    POST / HTTP/1.1
    > Host: www.baidu.com
    > User-Agent: curl/7.52.1
    > Accept: */*
    > rrrr: xxx
    > Content-Length: 9      //我要上传的字节长度
    > Content-Type: application/x-www-form-urlencoded    //上传的内容类型
    > 
    * upload completely sent off: 9 out of 9 bytes    //完整的上传了9个字节
    

    请求格式

    1. 动词 路径 协议/版本
    2. Key1:value1
    2. Key2:value2
    2. Key3:value3
    2. Content-Type:application/x-www-form-urlencoded   //例子
    2. Host:www.baidu.com
    2. User-Agent:cur/7.54.0
    3. 
    4. 要上传的数据l  
    

    请求最多包含四部分,至少包含三部分(也就是说第四部分可以为空)
    第三部分永远都是一个回车(\n)用来区分第2部分和第4部分
    动词有GET POST PUT PATCH DELETE HEAD OPTIONS
    这里的路径包括【查询参数】,但不包括【锚点】
    如果你没有写路径,那么路径默认为 /
    第2部分中的Content-Type 标注了第4部分的格式

    application/x-www-form-urlencoded
    application:应用数据
    x-:没有被写入规范(实验属性)
    www:万维网
    form:表单
    urlencoded:用urlencoded的形式压缩(中文转义)

    GET 获取
    POST 新增上传
    PUT 更新 整体更新
    PATCH 更新 局部更新
    DELETE 删除

    响应实例

    < HTTP/1.1 302 Found
    < Connection: Keep-Alive
    < Content-Length: 17931  //内容长度
    < Content-Type: text/html  //内容类型
    < Date: Sat, 26 May 2018 11:17:01 GMT
    < Etag: "54d97487-460b"
    < Server: bfe/1.0.8.18
    < 
    <html>
    <head>
    <meta http-equiv="content-type" ......
    

    响应格式

    1. 协议/版本号 状态码 状态解释
    2. Key1:value1
    2. Key2:value2
    2. Content-Length:17931
    2. Content-Type:text/html
    3. 
    4. 要下载的内容
    
    • 1xx 不常用
    • 2xx 表示成功 //POST 返回204 创建成功,GET 返回200 普通的成功
    • 3xx 表示重定向 //301 永久的搬走,302 临时被封禁,304 这一次内容和上一次内容一样
    • 4xx 访问者出错
    • 5xx 服务器出错

    第2部分中的Content-Type 标注了第4部分的格式
    第2部分中的Content-Type 遵循 MIME 规范

    相关文章

      网友评论

          本文标题:请求&响应

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