Обработка экранирующих символов в JSON

В одном из моих веб-запросов я получаю Response Body data как показано ниже


{
"JobId":1528,
"CaseId":61687,
"CaseName":"CaseName_3923",
"FirmId":4175,
"FirmName":"FirmName7922442",
"CaseFirmName":"CaseFirmName7922442",
"LastUpdatedDate":"0001-01-01T00:00:00Z"
}

Мне нужно использовать весь ответ тела в следующем веб-запросе, и для этого я хочу удалить начальный  персонажи.

Есть ли способ или настройка применяются в Jmeter с помощью которого я могу удалить этих персонажей? На самом деле я пытался Json Extractor с настройками ниже, но это не работает, поэтому я предполагаю, что начальный символ "" "создает проблему, не назначая значение идентификатора задания переменной vJobid

JSON Extractor: Apply To: только основной пример Имя переменных Cretaed: vJobIdJson PathExtractor: $.JobIDМатч № 1

2 ответа

Решение

Странные символы в начале вашей структуры JSON - это неправильно закодированная спецификация (метка порядка байтов). Кажется, вы получили значение UTF-8, которое отображается в виде строки в кодировке ISO-8859-1.

Поэтому первое, что нужно сделать, - это найти место, где вы ошиблись в кодировке, и исправить это. Если это не вариант, вы можете попытаться закодировать данные обратно в UTF-8 самостоятельно, используя JSR223PostProcessor перед вашим JSON Extractor со следующим Groovy кодом:

vars.put("correctedResult",
        new String(prev.responseDataAsString.bytes("ISO-8859-1"), "UTF-8"));

Этот постпроцессор попытается преобразовать плохо закодированную строку обратно в UTF-8 и сохранить полученный результат в переменной JMeter. correctedResult, выберите JMeter Variable Name to use со значением correctedResult в экстракторе JSON, чтобы использовать это вновь закодированное значение вместо исходных данных.

Но ясно, найти причину неправильной кодировки - лучший способ.

Вместо этого вы можете использовать Regular Expression Extractor,

Используйте регулярное выражение:

JobId":(\d+)

Матч № 1

Это будет соответствовать первому номеру идентификатора работы в ответе

Другие вопросы по тегам