mirror of
https://gitee.com/chinabugotech/hutool.git
synced 2025-07-21 15:09:48 +08:00
add method
This commit is contained in:
@@ -3,10 +3,11 @@
|
||||
|
||||
-------------------------------------------------------------------------------------------------------------
|
||||
|
||||
# 5.7.13 (2021-09-11)
|
||||
# 5.7.13 (2021-09-13)
|
||||
|
||||
### 🐣新特性
|
||||
* 【core 】 CsvReadConfig增加trimField选项(issue#I49M0C@Gitee)
|
||||
* 【http 】 HttpBase增加clearHeaders方法(issue#I49P23@Gitee)
|
||||
*
|
||||
### 🐞Bug修复
|
||||
* 【core 】 修复FuncKey函数无效问题
|
||||
|
@@ -16,13 +16,14 @@ import java.util.Map.Entry;
|
||||
* 所有Http请求将共用此全局头部信息,除非在{@link HttpRequest}中自定义头部信息覆盖之
|
||||
*
|
||||
* @author looly
|
||||
*
|
||||
*/
|
||||
public enum GlobalHeaders {
|
||||
INSTANCE;
|
||||
|
||||
/** 存储头信息 */
|
||||
protected Map<String, List<String>> headers = new HashMap<>();
|
||||
/**
|
||||
* 存储头信息
|
||||
*/
|
||||
Map<String, List<String>> headers = new HashMap<>();
|
||||
|
||||
/**
|
||||
* 构造
|
||||
@@ -56,6 +57,7 @@ public enum GlobalHeaders {
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------- Headers start
|
||||
|
||||
/**
|
||||
* 根据name获取头信息
|
||||
*
|
||||
@@ -211,6 +213,17 @@ public enum GlobalHeaders {
|
||||
public Map<String, List<String>> headers() {
|
||||
return Collections.unmodifiableMap(headers);
|
||||
}
|
||||
|
||||
/**
|
||||
* 清除所有头信息,包括全局头信息
|
||||
*
|
||||
* @return this
|
||||
* @since 5.7.13
|
||||
*/
|
||||
public GlobalHeaders clearHeaders() {
|
||||
this.headers.clear();
|
||||
return this;
|
||||
}
|
||||
// ---------------------------------------------------------------- Headers end
|
||||
|
||||
}
|
||||
|
@@ -17,27 +17,41 @@ import java.util.Map.Entry;
|
||||
|
||||
/**
|
||||
* http基类
|
||||
* @author Looly
|
||||
*
|
||||
* @param <T> 子类类型,方便链式编程
|
||||
* @author Looly
|
||||
*/
|
||||
@SuppressWarnings("unchecked")
|
||||
public abstract class HttpBase<T> {
|
||||
|
||||
/**HTTP/1.0*/
|
||||
/**
|
||||
* HTTP/1.0
|
||||
*/
|
||||
public static final String HTTP_1_0 = "HTTP/1.0";
|
||||
/**HTTP/1.1*/
|
||||
/**
|
||||
* HTTP/1.1
|
||||
*/
|
||||
public static final String HTTP_1_1 = "HTTP/1.1";
|
||||
|
||||
/**存储头信息*/
|
||||
/**
|
||||
* 存储头信息
|
||||
*/
|
||||
protected Map<String, List<String>> headers = new HashMap<>();
|
||||
/**编码*/
|
||||
/**
|
||||
* 编码
|
||||
*/
|
||||
protected Charset charset = CharsetUtil.CHARSET_UTF_8;
|
||||
/**http版本*/
|
||||
/**
|
||||
* http版本
|
||||
*/
|
||||
protected String httpVersion = HTTP_1_1;
|
||||
/**存储主体*/
|
||||
/**
|
||||
* 存储主体
|
||||
*/
|
||||
protected byte[] bodyBytes;
|
||||
|
||||
// ---------------------------------------------------------------- Headers start
|
||||
|
||||
/**
|
||||
* 根据name获取头信息<br>
|
||||
* 根据RFC2616规范,header的name不区分大小写
|
||||
@@ -55,6 +69,7 @@ public abstract class HttpBase<T> {
|
||||
|
||||
/**
|
||||
* 根据name获取头信息列表
|
||||
*
|
||||
* @param name Header名
|
||||
* @return Header值
|
||||
* @since 3.1.1
|
||||
@@ -70,6 +85,7 @@ public abstract class HttpBase<T> {
|
||||
|
||||
/**
|
||||
* 根据name获取头信息
|
||||
*
|
||||
* @param name Header名
|
||||
* @return Header值
|
||||
*/
|
||||
@@ -83,6 +99,7 @@ public abstract class HttpBase<T> {
|
||||
/**
|
||||
* 设置一个header<br>
|
||||
* 如果覆盖模式,则替换之前的值,否则加入到值列表中
|
||||
*
|
||||
* @param name Header名
|
||||
* @param value Header值
|
||||
* @param isOverride 是否覆盖已有值
|
||||
@@ -105,6 +122,7 @@ public abstract class HttpBase<T> {
|
||||
/**
|
||||
* 设置一个header<br>
|
||||
* 如果覆盖模式,则替换之前的值,否则加入到值列表中
|
||||
*
|
||||
* @param name Header名
|
||||
* @param value Header值
|
||||
* @param isOverride 是否覆盖已有值
|
||||
@@ -117,6 +135,7 @@ public abstract class HttpBase<T> {
|
||||
/**
|
||||
* 设置一个header<br>
|
||||
* 覆盖模式,则替换之前的值
|
||||
*
|
||||
* @param name Header名
|
||||
* @param value Header值
|
||||
* @return T 本身
|
||||
@@ -128,6 +147,7 @@ public abstract class HttpBase<T> {
|
||||
/**
|
||||
* 设置一个header<br>
|
||||
* 覆盖模式,则替换之前的值
|
||||
*
|
||||
* @param name Header名
|
||||
* @param value Header值
|
||||
* @return T 本身
|
||||
@@ -210,6 +230,7 @@ public abstract class HttpBase<T> {
|
||||
|
||||
/**
|
||||
* 移除一个头信息
|
||||
*
|
||||
* @param name Header名
|
||||
* @return this
|
||||
*/
|
||||
@@ -222,6 +243,7 @@ public abstract class HttpBase<T> {
|
||||
|
||||
/**
|
||||
* 移除一个头信息
|
||||
*
|
||||
* @param name Header名
|
||||
* @return this
|
||||
*/
|
||||
@@ -231,15 +253,28 @@ public abstract class HttpBase<T> {
|
||||
|
||||
/**
|
||||
* 获取headers
|
||||
*
|
||||
* @return Headers Map
|
||||
*/
|
||||
public Map<String, List<String>> headers() {
|
||||
return Collections.unmodifiableMap(headers);
|
||||
}
|
||||
|
||||
/**
|
||||
* 清除所有头信息,包括全局头信息
|
||||
*
|
||||
* @return this
|
||||
* @since 5.7.13
|
||||
*/
|
||||
public T clearHeaders() {
|
||||
this.headers.clear();
|
||||
return (T) this;
|
||||
}
|
||||
// ---------------------------------------------------------------- Headers end
|
||||
|
||||
/**
|
||||
* 返回http版本
|
||||
*
|
||||
* @return String
|
||||
*/
|
||||
public String httpVersion() {
|
||||
@@ -259,6 +294,7 @@ public abstract class HttpBase<T> {
|
||||
|
||||
/**
|
||||
* 返回字符集
|
||||
*
|
||||
* @return 字符集
|
||||
*/
|
||||
public String charset() {
|
||||
@@ -267,6 +303,7 @@ public abstract class HttpBase<T> {
|
||||
|
||||
/**
|
||||
* 设置字符集
|
||||
*
|
||||
* @param charset 字符集
|
||||
* @return T 自己
|
||||
* @see CharsetUtil
|
||||
@@ -280,6 +317,7 @@ public abstract class HttpBase<T> {
|
||||
|
||||
/**
|
||||
* 设置字符集
|
||||
*
|
||||
* @param charset 字符集
|
||||
* @return T 自己
|
||||
* @see CharsetUtil
|
||||
|
Reference in New Issue
Block a user