zoukankan      html  css  js  c++  java
  • HTTP基础

    • HTTP url
      • 最好通过URLEncode将参数部分编码,避免空格、中文和特殊字符
    • HTTP请求头中的origin, referer和host三个字段的区别
      • host
        • 描述请求将被发送的目的地,包括,且仅仅包括域名和端口号
        • 在任何类型请求中,request都会包含此header信息。
      • origin(可能没有)
        • 用来说明请求从哪里发起的,包括,且仅仅包括协议和域名。
        • 这个参数一般只存在于CORS跨域请求中,可以看到response有对应的header:Access-Control-Allow-Origin。
      • referer
        • 告知服务器请求的原始资源的URI,其用于所有类型的请求,并且包括:协议+域名+查询参数(注意,不包含锚点信息)。
        • 因为原始的URI中的查询参数可能包含ID或密码等敏感信息,如果写入referer,则可能导致信息泄露
    • HTTP Method
      • Get
      • Head
      • Post
        • 非等幂
        • Create或Update一个资源(整体更新),要提供所有字段信息
      • Put
        • 等幂
        • Create或Update一个资源(整体更新),要提供所有字段信息
        • 请求数据类型(Content Type)一般是application/json
        • 响应数据类型(Content Type)可能是application/hal+json或application/vnd.error+json,而不是简单的application/json
      • Patch
        • 非等幂
        • Patch一个资源(局部更新),一般只要提供必要信息(如id)即要修改的字段信息
        • 请求数据类型(Content Type)可能是application/merge-patch+json,而不是简单的application/json
        • 响应数据类型(Content Type)可能是application/hal+json或application/vnd.error+json,而不是简单的application/json
      • 对比
        • Post和Put都可以用于创建和更新资源,区别仅在于幂等性,只不过一般Post用于创建,Put用于全量更新,是否幂等更重要!
        • Get取得的数据一般和Post的数据差不多,可能就Post时少传一个id,因为是创建还没有id呢。Put和Post的参数结构就不一定了,不一定和Get对应,够用就行。
  • 相关阅读:
    java adsl 自动拔号!
    IoC 原理
    JAVA lucene 高并发问题
    C# java通信之webservice cxf Sping
    jquery插件学习(六)
    jquery插件学习(三)
    jquery实战定宽
    jquery插件学习(五)
    jquery插件学习(四)
    Androidsqlite数据库存取图片信息
  • 原文地址:https://www.cnblogs.com/wyp1988/p/10484275.html
Copyright © 2011-2022 走看看