我对使用groovy并不陌生,已经开始使用它来测试一些REST服务。由于“序言中不允许内容”,从服务解析XML响应时出现问题。经过一段时间的搜索后,我发现一个帖子说一开始可能有一个字节顺序标记。为了补偿,我按照他们的方法在第一个
使用HTTPBuilder,有没有一种方法可以处理分块的响应而不修剪字符?
如果我尝试:

def http = new HTTPBuilder('url')
http.request( Method.valueOf("GET"), XML )


我收到“序言消息中不允许的内容。然而:

http.request( Method.valueOf("GET"), TEXT )

可以,但是需要将文本修剪到第一个

最佳答案

当我需要与IIS服务器进行交互时,我遇到了同样的问题。返回的XML在Web服务器返回的实际XML前面带有假字符。我像这样解决它:

StringReader reader = builder.get( path: 'rcserver/systeminfo.xml', contentType: ContentType.TEXT )
def text = reader.getText()
def xml = new XmlSlurper().parseText(text.substring(1));

07-28 02:18
查看更多