解决gson异常转义

This commit is contained in:
liangdaliang
2025-03-13 11:22:14 +08:00
parent e338ebe729
commit b5a871689f

View File

@@ -111,14 +111,20 @@ public class JMeterUtil {
// 定义类型
Type type = new TypeToken<List<Map<String, String>>>() {}.getType();
// 解析 JSON 数组
List<Map<String, String>> headerList = gson.fromJson(requestHeader, type);
// 将 List<Map<String, String>> 转换为 Map<String, String>
for (Map<String, String> entry : headerList) {
String key = entry.get("key");
String value = entry.get("value");
headerMap.put(key, value);
List<Map<String, String>> headerList = null;
try {
requestHeader = requestHeader.replaceAll(",\\s*\\[\\{\"key\":\"\",\"value\":\"\"\\}]", "");
headerList = gson.fromJson(requestHeader, type);
// 将 List<Map<String, String>> 转换为 Map<String, String>
for (Map<String, String> entry : headerList) {
String key = entry.get("key");
String value = entry.get("value");
headerMap.put(key, value);
}
requestHeaderJson = gson.toJson(headerMap);
} catch (Exception e) {
logger.error("requestHeader gson.fromJson异常requestHeader" + requestHeader, e);
}
requestHeaderJson = gson.toJson(headerMap);
}
HeaderManager headerManager = createHeaderManager(headerMap);
@@ -522,6 +528,12 @@ public class JMeterUtil {
}
public static void main(String[] args) {
// String s = "[{\"key\":\"authorization\",\"value\":\"Bearer eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6IjhkZTZlMWYzLTU0YjMtNGM5MC05YTczLTA0NDkxYmE2NTZlNiJ9.oepUXspCPm6Gjjz3pXbs4O87p3ByemxxhRh5HXUFGK2x-lDb2uxdSRfITiE9LeDYQQNTD6UPYKPda2PWLyAUoA\"},[{\"key\":\"\",\"value\":\"\"}]]";
// s = s.replaceAll(",\\s*\\[\\{\"key\":\"\",\"value\":\"\"\\}]", "");
// Gson gson = new Gson();
// // 定义类型
// Type type = new TypeToken<List<Map<String, String>>>() {}.getType();
// gson.fromJson(s, type);
String paramJson = "{\"md5Value\":\"value1\",\"fileName\":\"value2\"}";
paramJson = "{\"name\":\"John\",\"city\":\"New York\",\"age\":30}";
String requestHeader = "{\"Content-Type\":\"application/json; charset=UTF-8\",\"Authorization\":\"Bearer token123\"}";