主题
ApiOne 不同 Content-Type 调用示例
application/json(默认)
java
import cn.com.digitalhainan.apione.sdk.ContentBody;
import cn.com.digitalhainan.apione.sdk.HttpCaller;
import cn.com.digitalhainan.apione.sdk.HttpParameters;
import cn.com.digitalhainan.apione.sdk.HttpReturn;
import okhttp3.MediaType;
public class JsonExample {
public static void main(String[] args) {
String requestUrl = "https://api-one-dev.digitalhainan.com.cn/apione";
String apiName = "user.create";
String ak = "your-access-key";
String sk = "your-secret-key";
String region = "INTRA";
// JSON 请求体
String jsonBody = "{\"username\":\"zhangsan\",\"age\":25}";
ContentBody contentBody = new ContentBody(jsonBody);
HttpParameters parameters = HttpParameters.builder()
.api(apiName)
.region(region)
.mediaType(MediaType.parse("application/json"))
.accessKey(ak)
.secretKey(sk)
.contentBody(contentBody)
.requestUrl(requestUrl)
.build();
HttpReturn call = HttpCaller.getInstance().call(parameters);
String response = call.getResponse();
System.out.println("响应结果:" + response);
}
}application/xml
java
import cn.com.digitalhainan.apione.sdk.ContentBody;
import cn.com.digitalhainan.apione.sdk.HttpCaller;
import cn.com.digitalhainan.apione.sdk.HttpParameters;
import cn.com.digitalhainan.apione.sdk.HttpReturn;
import okhttp3.MediaType;
public class XmlExample {
public static void main(String[] args) {
String requestUrl = "https://api-one-dev.digitalhainan.com.cn/apione";
String apiName = "xml.service.call";
String ak = "your-access-key";
String sk = "your-secret-key";
String region = "INTRA";
// XML 请求体
String xmlContent = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" +
"<request>\n" +
" <userId>12345</userId>\n" +
" <userName>张三</userName>\n" +
"</request>";
ContentBody contentBody = new ContentBody(xmlContent);
HttpParameters parameters = HttpParameters.builder()
.api(apiName)
.region(region)
.mediaType(MediaType.parse("application/xml"))
.accessKey(ak)
.secretKey(sk)
.contentBody(contentBody)
.requestUrl(requestUrl)
.build();
HttpReturn call = HttpCaller.getInstance().call(parameters);
String response = call.getResponse();
System.out.println("响应结果:" + response);
}
}application/x-www-form-urlencoded
java
import cn.com.digitalhainan.apione.sdk.ContentBody;
import cn.com.digitalhainan.apione.sdk.HttpCaller;
import cn.com.digitalhainan.apione.sdk.HttpParameters;
import cn.com.digitalhainan.apione.sdk.HttpReturn;
import okhttp3.MediaType;
public class FormUrlEncodedExample {
public static void main(String[] args) {
String requestUrl = "https://api-one-dev.digitalhainan.com.cn/apione";
String apiName = "form.data.submit";
String ak = "your-access-key";
String sk = "your-secret-key";
String region = "INTRA";
// Form 格式字符串:key=value&key1=value1
String formContent = "username=zhangsan&password=123456&captcha=abc123";
ContentBody contentBody = new ContentBody(formContent);
HttpParameters parameters = HttpParameters.builder()
.api(apiName)
.region(region)
.mediaType(MediaType.parse("application/x-www-form-urlencoded"))
.accessKey(ak)
.secretKey(sk)
.contentBody(contentBody)
.requestUrl(requestUrl)
.build();
HttpReturn call = HttpCaller.getInstance().call(parameters);
String response = call.getResponse();
System.out.println("响应结果:" + response);
}
}multipart/form-data
java
import cn.com.digitalhainan.apione.sdk.HttpCaller;
import cn.com.digitalhainan.apione.sdk.HttpParameters;
import cn.com.digitalhainan.apione.sdk.HttpReturn;
import okhttp3.MediaType;
import java.util.HashMap;
import java.util.Map;
public class MultipartFormExample {
public static void main(String[] args) {
String requestUrl = "https://api-one-dev.digitalhainan.com.cn/apione";
String apiName = "form.multipart.submit";
String ak = "your-access-key";
String sk = "your-secret-key";
String region = "INTRA";
// 准备 form 参数
Map<String, String> formParam = new HashMap<>();
formParam.put("description", "测试提交");
formParam.put("category", "document");
HttpParameters parameters = HttpParameters.builder()
.api(apiName)
.region(region)
.mediaType(MediaType.parse("multipart/form-data"))
// 传入 form 参数
.formParamsMap(formParam)
.accessKey(ak)
.secretKey(sk)
.requestUrl(requestUrl)
.build();
HttpReturn call = HttpCaller.getInstance().call(parameters);
String response = call.getResponse();
System.out.println("响应结果:" + response);
}
}Content-Type 速查表
| 接口类型 | MediaType | 参数设置 |
|---|---|---|
| JSON 接口(默认) | application/json | contentBody |
| XML 接口 | application/xml | contentBody |
| Form 表单 | application/x-www-form-urlencoded | contentBody |
| 文件上传 | multipart/form-data | formParamsMap + attachFileMaps |
