Groovy   发布时间:2022-04-12  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了groovy – 解析xml的问题大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我是Groovy的新手,我正在尝试解析有效​​的休息资源和无效资源.
例如:

这段代码工作正常 –

def entity = new XmlSlurper().parse('http://api.twitter.com/1/users/show/slashdot.xml')
println entity.name()
println entity.screen_name.text()

当我运行它时,我得到输出

user
slashdot

但是当我将无效的url传递给xmlSlurper时,就像这样

def entity = new XmlSlurper().parse('http://api.twitter.com/1/users/show/slashdotabc.xml')
println entity.name()
println entity.screen_name.text(

)

我收到此错误消息:

Caught: java.io.FileNotFoundException: http://api.twitter.com/1/users/show/slashdotabc.xml
    at xmltest.run(xmltest.groovy:1)

虽然url返回一个哈希代码(如下所示),但是我想解析并显示它.

<hash>
<request>/1/users/show/slashdotabc.xml</request>
<error>Not found</error>
</hash>

如何解析返回404但有错误信息的URL?

任何帮助将不胜感激.


谢谢&问候,
弗兰克科弗特

解决方法

您想要查看的响应可以在URL连接的errorStream而不是inputStream中找到.幸运的是,给定InputStream,XmlSlurper.parse也可以读取InputStream.

这是一个示例,当您没有获得200状态时切换到读取errorStream:

def con = new URL("http://api.twitter.com/1/users/show/slashdotaxxxbc.xml").openConnection()
def xml = new XmlSlurper().parse(con.responseCode == 200 ? con.inputStream : con.errorStream)

大佬总结

以上是大佬教程为你收集整理的groovy – 解析xml的问题全部内容,希望文章能够帮你解决groovy – 解析xml的问题所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: