Skip to content

Commit

Permalink
增加了post提交xml的方式
Browse files Browse the repository at this point in the history
  • Loading branch information
KeRan213539 committed May 11, 2018
1 parent 4c85153 commit 3c33f2c
Showing 1 changed file with 36 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,18 @@ public String post(String url,String jsonStr, IAsyncCallback callback) {
return (String)doPost(url, null, jsonStr, callback, null, false, null);
}

/**
* @Title: post
* @Description: 使用xml方式发送post请求, 有 callback为异步,callback传null为同步;异步时返回null
* @param url
* @param callback
* @param xmlStr
* @return
*/
public String post(String url, IAsyncCallback callback, String xmlStr) {
return (String) doPost(url, null, xmlStr, "application/xml", callback, null, false, null);
}

/**
* @Title: post
* @Description: 使用json方式发送post请求并返回okhttp3.Response, 有 callback为异步,callback传null为同步;异步时返回null
Expand Down Expand Up @@ -178,13 +190,34 @@ public <T extends UploadFileBase> String post(String url, Map<String, String> pr
* @param url
* @param prarm 传统参数方式
* @param jsonStr json参数方式
* @param callback
* @param callback 异步的回调方法,传null为同步
* @param isNeedResponse 是否需要Response对象
* @param callback4Response 传入Response对象的回调
* @param headerExt 加到请求的header里的参数
* @return
*/
private Object doPost(String url, Map<String, String> prarm, String jsonStr, IAsyncCallback callback, IAsyncCallback4Response callback4Response, boolean isNeedResponse, Map<String, String> headerExt) {
return doPost(url, prarm, jsonStr, "application/json", callback, callback4Response, isNeedResponse, headerExt);
}


/**
* @Title: doPost
* @Description: 执行post
* @param url
* @param prarm 传统参数方式
* @param postStr 需要post的字符串
* @param dataMediaType 需要post的字符串对应的格式: application/json; application/xml; application/text 等
* @param callback 异步的回调方法,传null为同步
* @param isNeedResponse 是否需要Response对象
* @param callback4Response 传入Response对象的回调
* @param headerExt 加到请求的header里的参数
* @return
*/
private Object doPost(String url, Map<String, String> prarm, String postStr, String dataMediaType , IAsyncCallback callback, IAsyncCallback4Response callback4Response, boolean isNeedResponse, Map<String, String> headerExt) {
RequestBody body = okhttp3.internal.Util.EMPTY_REQUEST;
if(StringUtils.isNotBlank(jsonStr)) {
body = RequestBody.create(MediaType.parse("application/json; charset=utf-8"), jsonStr);
if(StringUtils.isNotBlank(postStr)) {
body = RequestBody.create(MediaType.parse(dataMediaType + "; charset=utf-8"), postStr);
} else if(!CollectionUtils.isEmpty(prarm)) {
Builder builder = new FormBody.Builder();
prarm.forEach((k, v) -> builder.add(k, v));
Expand Down

0 comments on commit 3c33f2c

Please sign in to comment.