我是Roku编码的新手,我想知道是否有一个简单的函数(非任务节点)可以用来检查并查看URL是否有效,然后返回Yay或Nay,以便我可以检查第二个URL?谢谢<</p>
你可以在这里找到你要找的东西:roSystemLog
在此链接中,您也有一个很好的示例代码,您可以按照该代码进行操作。
您可以尝试在 url 调用上运行 Eval(),并检查是否存在 400 级错误。如果存在错误,则继续对您想要的下一个 url 进行另一个 Eval() 调用,依此类推,直到您获得一个可以脱离函数的 URL。Eval() 将测试代码,如果没有错误将继续,但如果它抛出运行时错误,它只会停止该代码执行而不会使应用程序崩溃。这是一个相当不错的临时异常处理程序。请参阅此处:https://sdkdocs.roku.com/display/sdkdoc/Runtime+Functions#RuntimeFunctions-Eval(codeasString)asDynamic
roTransfer
向URL发出请求,并检查错误。在这个例子中,我使用的是 GetHead()
,因为您需要做的就是检查有效性。
' given a 404 URL
url = "http://example.com/404"
' request HEAD for the URL
urlTransfer = CreateObject("roUrlTransfer")
urlTransfer.setUrl(url)
urlEvent = urlTransfer.head()
if urlEvent <> Invalid
responseCode = urlEvent.getResponseCode()
if responseCode >= 200 and responseCode < 300
print "success"
else
print "fail with code " + Stri(responseCode)
end if
else
print "transfer failed"
end if