in aliyun-sdk-opensearch/src/main/java/com/aliyun/opensearch/auth/OpenSearchAuthentication.java [100:130]
public TreeMap<String, Object> createSignParameters(String method, String request_path,
TreeMap<String, String> opensearch_headers,
Map<String, String> params) {
TreeMap<String, String> sortedQueryParameters = sortParametersByKey(params);
TreeMap<String, Object> signParameters = new TreeMap<String, Object>(new Comparator<String>() {
@Override
public int compare(String o1, String o2) {
return o1.compareTo(o2);
}
});
String content_md5 = "";
signParameters.put("method", method);
signParameters.put("request_path", request_path);
signParameters.put("content_md5", content_md5);
signParameters.put("content_type", "application/json; charset=utf-8");
signParameters.put("date", formatIso8601Date(new Date()));
signParameters.put("opensearch_headers", opensearch_headers);
signParameters.put("query_params", sortedQueryParameters);
if (!method.equals(OpenSearchClient.METHOD_GET)) {
if (params != null && !params.isEmpty()) {
String body = params.get(OpenSearchClient.POST_BODY_PARAM_KEY);
LOG.debug("BODY_CONTENT: ", body);
// signParameters.put("content_md5", DigestUtils.md5Hex(body));
signParameters.put("content_md5", Hashing.md5().hashString(body, Charset.forName("UTF-8")).toString());
}
}
return signParameters;
}