http的请求部分

基本结构

  1. 请求行 GET  /test/hello.html HTTP/1.1
  2. 消息头(并不是每一次请求都一样)
  3. 空行
  4. 内容(内容名字=内容体)

常用请头信息

  • Accept:text/html,image/*(告诉服务器,浏览器可以接受文本,网页图片)
  • Accept-Charaset:ISO-8859-1 [接受字符编码:iso-8859-1]
  • Accept-Encoding:gzip,compress[可以接受  gzip,compress压缩后数据]
  • Accept-Language:zh-cn[浏览器支持的语言]
  • Host:localhost:8080[浏览器要找的主机]
  • IF-MODIFIED-Since:Tue,11Jul 2000 18:23:51[告诉服务器我这缓存中有这个文件,该文件的时间]
  • Referer:http://localhost:8080/test/abc.html[告诉服务器我来自哪里,常用于防止下载,盗链]
  • User-Agent:Nozilla/4.0(Com...)[告诉服务器我的浏览器内核]
  • Cookie:[Cookie,常用于认证]
  • Connection:close/Keep-Alive [保持链接,发完数据后,我不关闭链接]
  • Date:[浏览器发送数据的请求时间]

常用响应头信息

  1. location:http://www.baidu.org/index.jsp
  2. server:apache tomcat [告诉浏览器我是tomcat]
  3. Content-Encoding:gzip[告诉浏览器我使用了gzip]
  4. Content-Lenght:80 [告诉浏览器回送的数据大小]
  5. Content-Language:zh-cn[支持中文]
  6. Content-Type:text/html;charset=gb2312[内容格式和编码]
  7. Last-Modified:Tue,11 Juj,2000 18 18:29:20[告诉浏览器该资源上次更新
  8.        时间是多少]
  9. Refresh:1;url=http://www.baidu.com[过多久刷新到哪里去]
  10. Content-Disposition;attachment;filename=aaa.zip[告诉浏览器有文件下载]
  11. Transfer-Encoding:chunked[传输编码]
  12. Set-Cookie:
  13. Expires:-1[告诉浏览器如何缓存页面]
  14. cache-Control:[告诉浏览器如何缓存页面(因为浏览器的兼容性最好设置两个)]
  15. pragma:no-cache
  16. Connection:close/Keep-Alive
  17. Date:Tue,11 Jul 2000 18:23:51

(1)有些网站对及时性比较高,我们不缓存页面
response.setDateHeader("Expires",-1);
//为了保证兼容性
response.setHeader("Cache-Control","no-cache")
response.setHeader("Pragma","no-cache")
(2)有些网站要求网页缓存一定时间,比如缓存一个小时
response.setDateHeader("Expires",System.currentimeMillis()*3600*1000*24);

通用信息头
Cache-Control:no-cache
Pragma:no-cache
Connection:close/Keep-Alive

Date:时间

HTTP协议请求头信息和响应头信息的更多相关文章

  1. php设置http请求头信息和响应头信息

    php设置http请求头信息和响应头信息 设置请求服务器的头信息可以用fsockopen,curl组件,header函数只能用来设置客户端响应的头信息,不能设置服务器的头信息. 例子;  一.head ...

  2. JAVA Serverlet 请求头信息和响应头信息

    <1>获取请求头信息 //获取请求头信息的全部名称 Enumeration<String> header = request.getHeaderNames(); while(h ...

  3. 【转载】curl 模拟 GET\POST 请求,curl查看响应头 以及 curl post 上传文件

    补充说明:curl查看响应头 curl -I "http://www.baidu.com"HTTP/1.1 200 OK #HTTP协议 HTTP 返回码Server: Tengi ...

  4. HTTP消息头(HTTP headers)-HTTP请求头与HTTP响应头

    感谢大佬:https://itbilu.com/other/relate/E1T0q4EIe.html HTTP协议将传输的信息分隔为两部分:HTTP信息头.HTTP信息体.通过HTTP头信息,使客户 ...

  5. HTTP详解教程 / HTTP 响应头信息 HTTP 响应头信息

    HTTP请求头提供了关于请求,响应或者其他的发送实体的信息. 在本章节中我们将具体来介绍HTTP响应头信息.直线电机哪家好 应答头 说明 Allow 服务器支持哪些请求方法(如GET.POST等). ...

  6. 001-http协议-请求报文以及服务器响应状态

    Http协议的几个概念: 1.连接(Connection):浏览器和服务器之间传输数据的通道. 一般请求完毕就关闭,http不保持连接.不保持连接会降低处理速度(因为建立连接速度很慢),保持连接的话就 ...

  7. HTTP协议扫盲(二)HTTP协议的请求方法、请求头和响应头

    一.HTTP请求方法 Http协议定义了很多与服务器交互的方法,最基本的有4种,分别是GET,POST,PUT,DELETE. 一个URL地址用于描述一个网络上的资源,而HTTP中的GET, POST ...

  8. 浏览器HTTP协议请求头信息

    通常HTTP消息包括客户机向服务器的请求消息和服务器向客户机的响应消息.客户端向服务器发送一个请求,请求头包含请求的方法.URI.协议版本.以及包含请求修饰符.客户信息和内容的类似于MIME的消息结构 ...

  9. http请求头响应头大全

    转:http://www.jb51.net/article/51951.htm 本文为多篇“HTTP请求头相关文章”及<HTTP权威指南>一书的阅读后个人汇总整理版,以便于理解. 通常HT ...

随机推荐

  1. 线程变量---ThreadLocal类

    用处:保存线程的独立变量.对一个线程类(继承自Thread) 思想:如果一个资源会引起线程竞争,那就为每一个线程配置一个资源.相比于synchronized是一种空间换时间的策略 当使用ThreadL ...

  2. Matplotlib(used in paper)

    1. 转自:matplotlib 使用 plt.savefig() 输出图片去除旁边的空白区域 注:如果不采用 subplot_adjust + margin(0,0),而是在fig.savefig( ...

  3. Pytorch tutorial 之Transfer Learning

    引自官方:  Transfer Learning tutorial Ng在Deeplearning.ai中讲过迁移学习适用于任务A.B有相同输入.任务B比任务A有更少的数据.A任务的低级特征有助于任务 ...

  4. 移动硬盘和u盘的区别

    移动硬盘和U盘都属于便携性存储器,用于计算机之间的数据交换.但移动硬盘和U盘的区别还是非常大的,包括内部构造.容量以及整体外观上. 移动硬盘又分为机械移动硬盘和固态移动硬盘两种,主要区别在于内置的存储 ...

  5. 流形学习(manifold learning)综述

    原文地址:https://blog.csdn.net/dllian/article/details/7472916 假设数据是均匀采样于一个高维欧氏空间中的低维流形,流形学习就是从高维采样数据中恢复低 ...

  6. Codeforces Educational Round 37

    Solved   CodeForces 920A Water The Garden   Solved   CodeForces 920B Tea Queue   Solved   CodeForces ...

  7. 025_lua脚本语言

    一.--cat /opt/nginx/conf/conf.dlua_package_path '/opt/nginx/conf/lua/?.lua;;'; --lua模块路径,其中”;;”表示默认搜索 ...

  8. Centos 安装 Nginx 详细过程

    系统 Centos 64位 第一步,首先下载Nginx的tar包及安装依赖的工具tar包. Nginx: http://nginx.org/en/download.html Nginx需要依赖下面3个 ...

  9. CF 545C

    题意: 砍树, 树会向左或者向右倒,数不能倒重叠, 问最多可以砍多少树 思路: 贪心 + Dp吧, 树要尽可能网左倒,这样对后面的树影响较小, 才是最优状态 #include<iostream& ...

  10. python学习第9-10天,函数。

    函数初识 为什么要使用函数? 函数最重要的目的是方便我们重复使用相同的一段程序. 将一些操作隶属于一个函数,以后你想实现相同的操作的时候,只用调用函数名就可以,而不需要重复敲所有的语句. 函数的定义与 ...