HTTP

作者: 良木树下 | 来源:发表于2019-02-01 15:53 被阅读5次

HTTP

RESTful

REST 指的是一组架构约束条件和原则。满足这些约束条件和原则的应用程序或设计就是 RESTful。

  • GET

    get方法在Rest中主要用于获取资源,能够发送参数,不过有限制,且参数都会以?开头的形 式附加在URL尾部。
    规范的get方法处理器应该是幂等的,也就是说对一个资源不论发送多少次get请求都不会更改数据或造成破坏。
  • POST

    post方法在Rest请求中主要用于添加资源,参数信息存放在请求报文的消息体中相对安全,且可发送较大信息
  • PUT

    put方法在Rest中主要用于更新资源,因为大多数浏览器不支持put和delete,会自动将put和delete请求转化为get和post. 因此为了使用put和delete方法,
    需要以post发送请求,在表单中使用隐藏域发送真正的请求。
    put方法的参数是同post一样是存放在消息中的,同样具有安全性,可发送较大信息。
    put方法是幂等的,对同一URL资源做出的同一数据的任意次put请求其对数据的改变都是一致的。
  • DELETE

    Delete在Rest请求中主要用于删除资源,因为大多数浏览器不支持put和delete,会自动将put和delete请求转化为get和post。
    因此为了使用put和delete方法,需要以post发送请求,在表单中使用隐藏域发送真正的请求。
    Delete方法的参数同post一样存放在消息体中,具有安全性,可发送较大信息 Delete方法是幂等的,不论对同一个资源进行多少次delete请求都不会破坏数据

https://blog.csdn.net/jnshu_it/article/details/80203696

GET和POST的区别

  • GET产生一个TCP数据包;POST产生两个TCP数据包。
  • GET在浏览器回退时是无害的,而POST会再次提交请求。
  • GET产生的URL地址可以被Bookmark,而POST不可以。
  • GET请求会被浏览器主动cache,而POST不会,除非手动设置。
  • GET请求只能进行url编码,而POST支持多种编码方式。
  • GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。
  • GET请求在URL中传送的参数是有长度限制的,而POST么有。
  • 对参数的数据类型,GET只接受ASCII字符,而POST没有限制。
  • GET比POST更不安全,因为参数直接暴露在URL上,所以不能用来传递敏感信息。
  • GET参数通过URL传递,POST放在Request body中。

Accept和Content-Type

Accept 请求头用来告知客户端可以处理的内容类型,这种内容类型用MIME类型来表示。
服务器使用 Content-Type 应答头通知客户端它的选择。

Accept: text/html
Accept: image/*
Accept: text/html, application/xhtml+xml, application/xml;q=0.9, */*;q=0.8

1.Accept属于请求头, Content-Type属于实体头。

Http报头分为通用报头,请求报头,响应报头和实体报头。

请求方的http报头结构:通用报头|请求报头|实体报头

响应方的http报头结构:通用报头|响应报头|实体报头

2.Accept代表发送端(客户端)希望接受的数据类型。

比如:Accept:text/xml;

代表客户端希望接受的数据类型是xml类型

Content-Type代表发送端(客户端|服务器)发送的实体数据的数据类型。

比如:Content-Type:text/html;

代表发送端发送的数据格式是html。

二者合起来,

Accept:text/xml;

Content-Type:text/html

即代表希望接受的数据类型是xml格式,本次请求发送的数据的数据格式是html。

状态码

状态码 类别 描述
1xx Informational(信息状态码) 接受请求正在处理
2xx Success(成功状态码) 请求正常处理完毕
3xx Redirection(重定向状态码) 需要附加操作已完成请求
4xx Client Error(客户端错误状态码) 服务器无法处理请求
5xx Server Error(服务器错误状态码) 服务器处理请求出错

回到顶部

HTTP缓存

https://segmentfault.com/a/1190000010690320

如何处理不让别人盗用你的图片,访问你的服务器资源

  • http header, 对refer做判断看来源是不是自己的网站,如果不是就拒绝
  • 通过session校验,如果不通过特定服务生成cookie和session就不能请求得到资源

回到顶部

相关文章

网友评论

      本文标题:HTTP

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