All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.base4j.util.http.Header Maven / Gradle / Ivy

The newest version!
package com.base4j.util.http;

/**
 * Http 头域
 *
 * @author Looly
 */
public enum Header {

    //------------------------------------------------------------- 通用头域
    /**
     * 提供日期和时间标志,说明报文是什么时间创建的
     */
    DATE("Date"),
    /**
     * 允许客户端和服务器指定与请求/响应连接有关的选项
     */
    CONNECTION("Connection"),
    /**
     * 给出发送端使用的MIME版本
     */
    MIME_VERSION("MIME-Version"),
    /**
     * 如果报文采用了分块传输编码(chunked transfer encoding) 方式,就可以用这个首部列出位于报文拖挂(trailer)部分的首部集合
     */
    TRAILER("Trailer"),
    /**
     * 告知接收端为了保证报文的可靠传输,对报文采用了什么编码方式
     */
    TRANSFER_ENCODING("Transfer-Encoding"),
    /**
     * 给出了发送端可能想要"升级"使用的新版本和协议
     */
    UPGRADE("Upgrade"),
    /**
     * 显示了报文经过的中间节点
     */
    VIA("Via"),
    /**
     * 指定请求和响应遵循的缓存机制
     */
    CACHE_CONTROL("Cache-Control"),
    /**
     * 用来包含实现特定的指令,最常用的是Pragma:no-cache。在HTTP/1.1协议中,它的含义和Cache- Control:no-cache相同
     */
    PRAGMA("Pragma"),
    /**
     * 请求表示提交内容类型或返回返回内容的MIME类型
     */
    CONTENT_TYPE("Content-Type"),

    //------------------------------------------------------------- 请求头域
    /**
     * 指定请求资源的Intenet主机和端口号,必须表示请求url的原始服务器或网关的位置。HTTP/1.1请求必须包含主机头域,否则系统会以400状态码返回
     */
    HOST("Host"),
    /**
     * 允许客户端指定请求uri的源资源地址,这可以允许服务器生成回退链表,可用来登陆、优化cache等。他也允许废除的或错误的连接由于维护的目的被 追踪。如果请求的uri没有自己的uri地址,Referer不能被发送。如果指定的是部分uri地址,则此地址应该是一个相对地址
     */
    REFERER("Referer"),
    /**
     * HTTP客户端运行的浏览器类型的详细信息。通过该头部信息,web服务器可以判断到当前HTTP请求的客户端浏览器类别
     */
    USER_AGENT("User-Agent"),
    /**
     * 指定客户端能够接收的内容类型,内容类型中的先后次序表示客户端接收的先后次序
     */
    ACCEPT("Accept"),
    /**
     * 指定HTTP客户端浏览器用来展示返回信息所优先选择的语言
     */
    ACCEPT_LANGUAGE("Accept-Language"),
    /**
     * 指定客户端浏览器可以支持的web服务器返回内容压缩编码类型
     */
    ACCEPT_ENCODING("Accept-Encoding"),
    /**
     * 浏览器可以接受的字符编码集
     */
    ACCEPT_CHARSET("Accept-Charset"),
    /**
     * HTTP请求发送时,会把保存在该请求域名下的所有cookie值一起发送给web服务器
     */
    COOKIE("Cookie"),
    /**
     * 请求的内容长度
     */
    CONTENT_LENGTH("Content-Length"),

    //------------------------------------------------------------- 响应头域
    /**
     * Cookie
     */
    SET_COOKIE("Set-Cookie"),
    /**
     * Content-Encoding
     */
    CONTENT_ENCODING("Content-Encoding"),
    /**
     * ETag
     */
    ETAG("ETag");

    private String value;

    private Header(String value) {
        this.value = value;
    }

    @Override
    public String toString() {
        return value;
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy