我想要响应标头 etag 中的特定值。
响应头:
etag: W/"118-pbdwwFo9SKNhD3Lx5iHJyngpq00"
空手道代码:
* def etag = responseHeaders['etag'][0]
* print 'Value of Etag is', etag
* def etagValue = etag.substring(etag.lastIndexOf('-') + 1)
* print 'Value of Etag is', etagValue
它给了我预期的完整 etag 的值。现在我只想获取如下特定值。
etag变量有值
W/"118-pbdwwFo9SKNhD3Lx5iHJyngpq00"
etagValue 变量在这里有值如何从末尾删除双引号
pbdwwFo9SKNhD3Lx5iHJyngpq00"
期望值,其中 - 是我需要的值的左边界,“是右边界。
pbdwwFo9SKNhD3Lx5iHJyngpq00
Use indexOf()
两次。干得好:
* def etag = 'W/"118-pbdwwFo9SKNhD3Lx5iHJyngpq00"'
* def temp1 = etag.substring(etag.indexOf('-') + 1)
* def temp2 = temp1.substring(0, temp1.indexOf('"'))
* match temp2 == 'pbdwwFo9SKNhD3Lx5iHJyngpq00'
为了完整起见,还有一个karate.extract()可以使用正则表达式的API:
* def extracted = karate.extract(etag, '-([^\\"]+)"', 1)
* match extracted == 'pbdwwFo9SKNhD3Lx5iHJyngpq00'
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)