Groovy捕获除Map之外的Structure中的响应头

时间:2012-08-17 15:40:54

标签: web-services grails groovy webclient soapui

我试图通过Groovy客户端捕获Web服务响应,我必须检查重复的标头密钥作为响应。我正在使用messageExchage.responseHeaders()捕获响应头,但由于它返回map,它只给我一次键,即使它在响应中出现两次。有没有办法在Array或其他数据结构中获取它?

2 个答案:

答案 0 :(得分:3)

您是如何访问网络服务的?如果您使用groovy HttpBuilder,则可以遍历标题,复制包含的键:

new HTTPBuilder('http://webservice/').with {
    request(Method.GET) {
        uri.path = '/'
        response.success = { resp ->
            assert resp.status == 200
            resp.headers.each {
                println "${it.name}: ${it.value}"
            }
        }
    }
}

答案 1 :(得分:1)

rawResponseAsString = new String( messageExchange.getRawResponseData())
log.info rawResponseAsString