/**
* Expects query string parameters to already be UTF-8 encoded. See AdvancedStringTool.makeUrlParameters().
* URL fragment is stripped from URL when sent to server.
*/
public DatarouterHttpRequest(HttpRequestMethod method, final String url, boolean retrySafe){
Args.notBlank(url, "request url");
Args.notNull(method, "http method");
String fragment;
int fragmentIndex = url.indexOf('#');
if(fragmentIndex > 0 && fragmentIndex < url.length() - 1){
fragment = url.substring(fragmentIndex + 1);
}else{
fragmentIndex = url.length();
fragment = "";
}
String path = url.substring(0, fragmentIndex);
Map<String,List<String>> queryParams;
int queryIndex = path.indexOf("?");
if(queryIndex > 0){
queryParams = extractQueryParams(path.substring(queryIndex + 1));
path = path.substring(0, queryIndex);
}else{
queryParams = new LinkedHashMap<>();
}
this.method = method;
this.path = path;
this.retrySafe = retrySafe;
this.fragment = fragment;
this.headers = new HashMap<>();
this.queryParams = queryParams;
this.postParams = new HashMap<>();
this.cookies = new ArrayList<>();
}
DatarouterHttpRequest.java 文件源码
java
阅读 24
收藏 0
点赞 0
评论 0
项目:datarouter
作者:
评论列表
文章目录