fix(API数据源): 请求 form-data 失败
This commit is contained in:
parent
2532483a85
commit
5f09346929
@ -1,16 +1,15 @@
|
|||||||
package io.dataease.controller.request.datasource;
|
package io.dataease.controller.request.datasource;
|
||||||
|
|
||||||
import com.google.gson.JsonObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
public class ApiDefinitionRequest {
|
public class ApiDefinitionRequest {
|
||||||
private List<Map<String, String>> headers = new ArrayList<>();
|
private List<Map<String, String>> headers = new ArrayList<>();
|
||||||
private Map<String, Object> body = new HashMap<>();
|
private JSONObject body = new JSONObject();
|
||||||
private AuthManager authManager = new AuthManager();
|
private AuthManager authManager = new AuthManager();
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -5,8 +5,9 @@ import com.alibaba.fastjson.JSON;
|
|||||||
import com.alibaba.fastjson.JSONArray;
|
import com.alibaba.fastjson.JSONArray;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import com.alibaba.fastjson.serializer.SerializerFeature;
|
import com.alibaba.fastjson.serializer.SerializerFeature;
|
||||||
import com.google.gson.*;
|
import com.google.common.reflect.TypeToken;
|
||||||
import com.google.gson.reflect.TypeToken;
|
import com.google.gson.Gson;
|
||||||
|
import com.google.gson.JsonObject;
|
||||||
import io.dataease.controller.sys.response.BasicInfo;
|
import io.dataease.controller.sys.response.BasicInfo;
|
||||||
import io.dataease.dto.dataset.DatasetTableFieldDTO;
|
import io.dataease.dto.dataset.DatasetTableFieldDTO;
|
||||||
import io.dataease.plugins.common.dto.datasource.TableDesc;
|
import io.dataease.plugins.common.dto.datasource.TableDesc;
|
||||||
@ -161,11 +162,12 @@ public class ApiProvider extends Provider {
|
|||||||
if (StringUtils.equalsAny(type, "Form_Data", "WWW_FORM")) {
|
if (StringUtils.equalsAny(type, "Form_Data", "WWW_FORM")) {
|
||||||
if (apiDefinitionRequest.getBody().get("kvs") != null) {
|
if (apiDefinitionRequest.getBody().get("kvs") != null) {
|
||||||
Map<String, String> body = new HashMap<>();
|
Map<String, String> body = new HashMap<>();
|
||||||
JsonArray kvsArr = JsonParser.parseString(apiDefinitionRequest.getBody().get("kvs").toString()).getAsJsonArray();
|
JSONObject bodyObj = JSONObject.parseObject(apiDefinitionRequest.getBody().toString());
|
||||||
|
JSONArray kvsArr = bodyObj.getJSONArray("kvs");
|
||||||
for (int i = 0; i < kvsArr.size(); i++) {
|
for (int i = 0; i < kvsArr.size(); i++) {
|
||||||
JsonObject kv = kvsArr.get(i).getAsJsonObject();
|
JSONObject kv = kvsArr.getJSONObject(i);
|
||||||
if (kv.get("name") != null) {
|
if (kv.containsKey("name")) {
|
||||||
body.put(kv.get("name").getAsString(), kv.get("value").getAsString());
|
body.put(kv.getString("name"), kv.getString("value"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
response = HttpClientUtil.post(apiDefinition.getUrl(), body, httpClientConfig);
|
response = HttpClientUtil.post(apiDefinition.getUrl(), body, httpClientConfig);
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user