美文网首页IT修真院_JAVA
Http的Header里面包含哪些字段,每个字段都有哪些含义?

Http的Header里面包含哪些字段,每个字段都有哪些含义?

作者: zt1106 | 来源:发表于2017-09-04 10:05 被阅读0次

大家好,我是IT修真院学员,一枚正直善良的Java程序员。

今天给大家分享一下,修真院官网 Java任务中可能会使用到的知识点:

Http的Header

1.背景介绍

HTTP报文中的Header可以分为请求中的Header和响应中的Header

2.知识剖析

常见Header详解:

Header中”q”值的含义:优先级。

没有q值的优先级默认为1。

q值一样的,范围小的优先级高。

格式:分号。

Accept:

客户端可以接受的Body格式

application/json ——JSON格式

text/plain——纯文本格式

text/html——HTML文本

*/*——所有格式

逗号隔开,有顺序。

分号前是主类型,分号后是子类型。

如果没有Accept请求头,相当于*/*

Accept-Encoding :

Content-Encoding:

Accept-Encoding指定浏览器可以支持的web服务器返回内容压缩编码类型。

服务器会通过Accept-Encoding得到客户端支持的压缩方式,如果服务器和浏览器同时支持某种压缩方式,服务器就会添加一种Content-Encoding,来进行压缩。

如果服务器不支持客户端Accept-Encoding中的任何一个压缩方式,则会返回406错误。

如果请求头中没有Accept-Encoding这个头,则会默认客户端支持任何方式。

Accept-Language:

浏览器可接受的自然语言的类型。

如果没有Accept-Language这个请求头,服务器默认客户端支持所有自然语言。

例如:zh-CN,zh;q=0.8,en;q=0.6,zh-TW;q=0.4

User-Agent:

主要用于统计和追踪信息,用处不大。可以包含很多信息。

User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.101 Safari/537.36

Content-Type:

表示请求或响应体的格式。

Connection:

设置HTTP连接的持久化,通常都是Keep-Alive。

Connection: close 表示在响应结束后,结束连接。

WWW-Authenticate:

WWW-Authenticate响应头必须包含在401授权错误中,表示通过什么方式进行身份验证。

例如:WWW-Authenticate: BASIC realm="application"

3.常见问题

如果没有ACCEPT请求头?

相当于*/*

任何格式都接收

如果请求头中没有ACCEPT-ENCODING?

默认客户端支持任何方式

如果没有ACCEPT-LANGUAGE这个请求头?

服务器默认客户端支持所有自然语言。

POSTMAN测试正常,前端页面测试不正常??

4.解决方法

POSTMAN

JMETER

CHROME

5.编码实战

在JAVA中取得请求头?

取得HttpServletRequest对象

public String getHeader(String name);

public Enumeration getHeaders(String name);

public Enumeration getHeaderNames();

在JAVA中添加响应头?

取得HttpServletResponse对象

public void setHeader(String name, String value);——会覆盖

public void addHeader(String name, String value);——添加多个值

6.扩展思考

如何用JAVA更改请求头?

7.参考文献

百度

8.更多讨论

ptteng.github.io/PPT/PPT-java/java-task2-header.html


HTTP的header里面包含哪些字段,每个字段有什么含义_腾讯视频

相关文章

网友评论

    本文标题:Http的Header里面包含哪些字段,每个字段都有哪些含义?

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