常见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. python数据库-mongoDB的高级查询操作(55)

    一.MongoDB索引 为什么使用索引? 假设有一本书,你想看第六章第六节讲的是什么,你会怎么做,一般人肯定去看目录,找到这一节对应的页数,然后翻到这一页.这就是目录索引,帮助读者快速找到想要的章节. ...

  2. 【基础算法-模拟-例题-玩具谜题】-C++

    原题链接P1563 玩具谜题 这道题依然是一道模拟题目,就简单讲讲坑点: 1.有些时候在转圈的时候要用到它们站成了一个环的性质! 2.小人面朝的方向影响了它们左右的方向! 3.注意考虑顺时针逆时针与小 ...

  3. 找bug的过程

    关于昨天程序出差我找bug的过程记录 昨天才程序 https://www.cnblogs.com/pythonywy/p/11006273.html ├── xxxx │ ├── src.py │ └ ...

  4. 解决 mysql多表联合查询时出现的分页问题

    mysql一对多分页问题 部门表:tbl_dept 员工表:tbl_emp 数据库sql文件 CREATE DATABASE /*!32312 IF NOT EXISTS*/`ssm-crud` /* ...

  5. Sqoop学习及使用

    Sqoop 简介 Sql + Hadoop = Sqoop Apache Sqoop™是一种旨在有效地在 Apache Hadoop 和诸如关系数据库等结构化数据存 储之间传输大量数据的工具 原理 将 ...

  6. C语言编程入门之--第一章初识程序

    第一章 初识程序 导读:计算机程序无时不刻的影响着人类的生活,现代社会已经离不开程序,程序的作用如此巨大,那么程序到底是什么呢?本章主要讨论程序的概念,唤起读者对程序的兴趣,同时对C语言程序与其它语言 ...

  7. sql注入------基于时间延迟benchmark函数注入脚本

    #author:windy_2import requests urlx = 'http://127.0.0.1/?id= 1 and if((substr((select database()),' ...

  8. 简单分析线程获取ReentrantReadWriteLock 读锁的规则

    1. 问题 最近有同事问了我一个问题,在Java编程中,当有一条线程要获取ReentrantReadWriteLock的读锁,此时已经有其他线程获得了读锁,AQS队列里也有线程在等待写锁.由于读锁是共 ...

  9. 通过sysbench工具实现MySQL数据库的性能测试

    1.背景 sysbench是一款压力测试工具,可以测试系统的硬件性能,也可以用来对数据库进行基准测试.sysbench 支持的测试有CPU运算性能测试.内存分配及传输速度测试.磁盘IO性能测试.POS ...

  10. 小白学python-day05(2)-列表及其操作

    今天是day05(2),以下是学习总结 但行努力,莫问前程. --------------------------------------------------------------------- ...