常见http请求报文头属性
     Accept:告诉服务端,客户端接受什么类型的响应,例如:
          Accept:text/plan      表示纯文本
          Accept的值可以是一个或多个midia type
             midia type介绍:  https://en.wikipedia.org/wiki/Media_type
          
     cookie:客户端的cookie通过这个报文头属性传递给服务端。
          cookie中有一个sessionid类似的属性,将cookie于session绑定起来。
     
     referer:表示这个请求是从哪个url过来的。
     
     cache-control:对缓存进行控制。
          如下:Ca-Control:no-cache      不要在客户端缓存
          如果没有选择no-cache,Cache-Control有两种选择:
               max-age>0     直接从浏览器缓存读取
               Max-age<=0   向服务器发送http请求,根据请求头判断该资源是否有修改,有的话返回200,无返回304
     
 
常见响应状态码:
     200:请求成功
     303:See Other      redirect到其他页面
     304:Not  Modified  
          如果返回状态码304,表示这是个条件请求。请求头中有两个参数:if-Modified-Since和if-None-Match。
          当浏览器中缓存了目标资源但不确定该资源是否是最新版本时候,会发送一个条件请求。包含请求头if-Modified-Since,他的值是服务器上次
     返回的响应头中的Last-Modified值,还会提供一个if-None-Match请求头,值为服务器上次返回的ETag响应头的值。服务器会校验这两个请求头
     的值,判断客户端缓存的值是否是最新的。
     500 :Internal Server Error
          服务器错误,去改bug吧
 
常见Http响应报文头属性:
     cache-control:告诉客户端对缓存该如何控制控制。
          如下:max-age=3600   告诉客户端缓存3600秒,也就是在3600秒内,客户端再次访问会直接从缓存中读取。
     
     ETag:一个响应服务端资源版本的报文头属性,如果服务端资源改变了,这个ETag会相应发生变化。是Cache-Control的有益补充。
 
     Location:我们在jsp中如果想让页面Redirect到A页面中,其实是让客户端再发一个请求到A页面,这个需要Redirect到A页面的URL,就是通过响
应报文头的Location属性告知客户端的。
 
          

Java学习|HTTP请求头的更多相关文章

  1. java通过浏览器请求头(User-Agent)获取访问者设备信息以及系统版本

    个人博客 地址:http://www.wenhaofan.com/article/20181125220342 在开发AutuBlog项目时需要做后台的登录记录,想起浏览器的User-Agent,于是 ...

  2. java http 伪造请求头

    import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; import ...

  3. 一个java的http请求的封装工具类

    java实现http请求的方法常用有两种,一种则是通过java自带的标准类HttpURLConnection去实现,另一种是通过apache的httpclient去实现.本文用httpclient去实 ...

  4. Android Http请求头与响应头的学习

    本节引言: 上节中我们对Android涉及的网络编程进行了了解,也学习了下Http的基本概念,而本节我们 要学习的是Http的请求头与响应头,当然,可以把也可以把这节看作文档,用到的时候来查查 即可! ...

  5. Java学习心得之 HttpClient的GET和POST请求

    作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Java学习心得之 HttpClient的GET和POST请求 1. 前言2. GET请求3 ...

  6. HTTP协议简介详解 HTTP协议发展 原理 请求方法 响应状态码 请求头 请求首部 java模拟浏览器客户端服务端

    协议简介 协议,自然语言里面就是契约,也是双方或者多方经过协商达成的一致意见; 契约也即类似于合同,自然有甲方123...,乙方123...,哪些能做,哪些不能做; 通信协议,也即是双方通过网络通信必 ...

  7. java学习-get和post请求

    摘要 看完本文可以知道,使用java原生编写get/post请求的步骤,进行网络请求时应该注意的地方. 这里使用java自带的HttpUrlConnection对象进行网络请求, 请求步骤大致分为五步 ...

  8. java 修改HttpServletRequest的参数或请求头

    场景:过滤器中获取参数Token并添加到请求头(用户认证兼容老系统) 请求头和请求参数是不能直接修改,也没有提供修改的方法,但是可以在过滤器和拦截器中使用HttpServletRequestWrapp ...

  9. JAVA携带参数(带有请求参数,请求头参数)直接发送POST请求

    <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpcl ...

随机推荐

  1. 主机地址变更后,dubbo请求时依旧会寻址旧IP的问题

    机房迁移,导致测试服务器IP变更,比原于IP为192.168.1.105变更为10.1.9.120. 服务源码未做任何变更,启动服务时依旧是旧地址请求,此问题由dubbo本地注册中心的缓存所致,清理掉 ...

  2. Junit简单的案例

    Calculator: public class Calculator { public double add(double number1, double number2) { return num ...

  3. Flutter学习笔记(8)--Dart面向对象

    如需转载,请注明出处:Flutter学习笔记(7)--Dart异常处理 Dart作为高级语言,支持面向对象的很多特性,并且支持基于mixin的继承方式,基于mixin的继承方式是指:一个类可以继承自多 ...

  4. 【题解】Unit Fraction Partition-C++

    Description给出数字P,Q,A,N,代表将分数P/Q分解成至多N个分数之和,这些分数的分子全为1,且分母的乘积不超过A.例如当输入数据为2 3 120 3时,我们可以得到以下几种分法: In ...

  5. 【拓扑排序】威虎山上的分配-C++

    威虎山上的分配 描述 每年过年的时候,座山雕都会给兄弟们分银子,分银子之前,座山雕允许大伙儿发表意见,因为要是没法满足所有人的意见,指不定谁要搞出什么大新闻.不过每个人在提意见的时候只能说:" ...

  6. python函数知识二 动态参数、函数的注释、名称空间、函数的嵌套、global,nonlocal

    6.函数的动态参数 *args,**kwargs:能接受动态的位置参数和动态的关键字参数 *args -- tuple *kwargs -- dict 动态参数优先级:位置参数 > 动态位置参数 ...

  7. nginx的access.log 和 error.log

    nginx 常用的配置文件有两种: access.log 和 error.log access.log 的作用是 记录用户所有的访问请求,不论状态码,包括200 ,404,500等请求,404,500 ...

  8. 基于TCP协议的套接字编程

    06.26自我总结 1.关于Socket Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口.在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在 ...

  9. c语言进阶12-线性表之顺序表

    一.  线性表的定义 为什么要学习线性表呢? 因为我们日常生活中存在种数据关系,计算机程序是为了解决日常生活的数据关系,因此我们要学习线性表. 线性表是什么呢? 线性表是由n个元素组成的有限序列. 需 ...

  10. Cesium 学习(三)各种资源链接

    1.前言 前面已经介绍如何获得以及安装部署Cesium,接下来分享下学习资源链接,其中访问最多的是官网以及超图.火星的demo网站. 2.官网地址及介绍 官网:https://cesiumjs.org ...