我将一些wordpress内容包含在带有customTag的grails应用程序中 一切正常。如果网址的状态代码不是200,我想要呈现一些标准文本
我到目前为止
def wordpressHp = { body ->
// def url = grailsApplication.config.wordpress.server.url+'?include=true'
def url = "http://www.dasdasdasgsdniga.nd"
def content
try{
content = url.toURL().getText(connectTimeout: 10000)
}catch(e){
content="SORRY WORDPRESS IS CURRENTLY NOT AVAILABLE"
}
out << content
}
正确的网址被注释掉了,我现在希望尝试失败 但它不是渲染它渲染我的提供者的一些DNS错误页面。 所以我认为我必须寻找http状态代码,但我该怎么做?
任何提示,提前谢谢
答案 0 :(得分:10)
你可以尝试:
def url = "http://www.dasdasdasgsdniga.nd"
def content
try {
content = url.toURL().openConnection().with { conn ->
readTimeout = 10000
if( responseCode != 200 ) {
throw new Exception( 'Not Ok' )
}
conn.content.withReader { r ->
r.text
}
}
}
catch( e ) {
content="SORRY WORDPRESS IS CURRENTLY NOT AVAILABLE"
}