web条件式请求-时间
HTTP协议中的 If-Unmodified-Since 消息头用于请求之中,使得当前请求成为条件式请求:只有当资源在指定的时间之后没有进行过修改的情况下,服务器才会返回请求的资源,或是接受 POST 或其他 non-safe 方法的请求。如果所请求的资源在指定的时间之后发生了修改,那么会返回 412 (Precondition Failed) 错误。
常见的应用场景有两种:
与 non-safe 方法如 POST 搭配使用,可以用来优化并发控制,例如在某些wiki应用中的做法:假如在原始副本获取之后,服务器上所存储的文档已经被修改,那么对其作出的编辑会被拒绝提交。
与含有 If-Range 消息头的范围请求搭配使用,用来确保新的请求片段来自于未经修改的文档。
指令
国际标准时间。HTTP中的时间均用国际标准时间表示,从来不使用当地时间。
示例
1 | If-Unmodified-Since: Wed, 21 Oct 2015 07:28:00 GMT |
CTF
curl -X GET \
http://kyaru.hgame.n3ko.co/ \
-H ‘Host: kyaru.hgame.n3ko.co’ \
-H ‘If-Unmodified-Since: Tue, 7 Oct 2077 00:00:00 GMT’ \
-H ‘Referer: vidar.club’ \
-H ‘User-Agent: Cosmos’ \ -
H ‘X-Forwarded-For: 127.0.0.1’
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Rick!
评论