浏览代码

fix #1426: send requested Content-Type to Elasticsearch

Kaoru FUZITA 7 年之前
父节点
当前提交
aee4c4e7b5
共有 1 个文件被更改,包括 5 次插入1 次删除
  1. 5 1
      src/main/java/org/codelibs/fess/api/es/EsApiManager.java

+ 5 - 1
src/main/java/org/codelibs/fess/api/es/EsApiManager.java

@@ -114,7 +114,11 @@ public class EsApiManager extends BaseApiManager {
 
 
         final Method httpMethod = Method.valueOf(request.getMethod().toUpperCase(Locale.ROOT));
         final Method httpMethod = Method.valueOf(request.getMethod().toUpperCase(Locale.ROOT));
         final CurlRequest curlRequest = new CurlRequest(httpMethod, ResourceUtil.getElasticsearchHttpUrl() + path);
         final CurlRequest curlRequest = new CurlRequest(httpMethod, ResourceUtil.getElasticsearchHttpUrl() + path);
-        curlRequest.header("Content-Type", "application/json;charset=utf-8");
+
+        final String contentType = request.getHeader("Content-Type");
+        if (StringUtil.isNotEmpty(contentType)) {
+            curlRequest.header("Content-Type", contentType);
+        }
 
 
         request.getParameterMap().entrySet().stream().forEach(entry -> {
         request.getParameterMap().entrySet().stream().forEach(entry -> {
             if (entry.getValue().length > 1) {
             if (entry.getValue().length > 1) {