我正在使用Katalon Studio并使用它来发送API请求。该请求基本上是返回我想在HTTP标头中使用的信息。我可以使用Groovy或Java来提取这个,但不知道我该怎么做。
我已经尝试过qazxsw poi以获得游戏代码,但它不起作用。
这是我使用的代码
create_game_response.getHeadewrFields(GameCode)
这是回应:
WS.sendRequest(findTestObject('UserRestService/Create Game'))
WS.verifyResponseStatusCode(create_game_response, 201)
def header_text = create_game_response.getHeaderFields()
println(header_text)
def game_code = create_game_response.getHeaderFields();
String game_code_list = game_code.toString()
println(game_code_list)
我试图从游戏代码中提取“1jwoz2qy0js”并将其用作字符串,我该怎么做?
{GameCode=[1jwoz2qy0js], Transfer-Encoding=[chunked], null=[HTTP/1.1 201 Created]}
返回标题的Map,其中每个标题都是List。而不是将其转换为String并尝试解析它,只需获取所需的字段:
getHeaderFields()
然后选择第一个,如果有的话:
Map headers = create_game_response.getHeaderFields()
List gameCodes = headers["GameCode"]
下面的Groovy代码:
assert gamesCodes[0] == "1jwoz2qy0js"
输出:
str = '{GameCode=[1jwoz2qy0js], Transfer-Encoding=[chunked], null=[HTTP/1.1 201 Created]}'
left_idx = str.indexOf('[') + 1
right_idx = str.indexOf(']')
print str.substring(left_idx,right_idx)