我是Roku App开发的新手。我需要解析从api调用收到的json。谁能建议我任何示例链接,因为我在Roku博客上没有得到Json解析示例。
答案 0 :(得分:1)
基于Roku文档
假设您有这样的API响应:
{
"photos" : [
{
"title" : "View from the hotel",
"url" : "http://example.com/images/00012.jpg"
},
{
"title" : "Relaxing at the beach",
"url" : "http://example.com/images/00222.jpg"
},
{
"title" : "Flat tire",
"url" : "http://example.com/images/00314.jpg"
}
]
}
然后,与响应交互如下:
searchRequest = CreateObject("roUrlTransfer")
searchRequest.SetURL("http://api.example.com/services/rest/getPhotos")
response = ParseJson(searchRequest.GetToString())
For Each photo In response.photos
GetImage(photo.title, photo.url)
End For
您可以查看更多详细信息here
请注意,您需要设置一些证书才能发出请求here。
了解整个功能很重要,但是,您可以使用一些库来减轻请求的痛苦。通常,您最终会创建自己的包装器。
我不是这个repo的所有者,我已经在几个项目中看到了这个NewHttp函数。
如果要使用该包装,可以按以下步骤进行:
m.http = NewHttp(url,invalid,"GET")
m.http.AddHeader("X-Roku-Reserved-Dev-Id", "")
response = m.http.GetToStringWithTimeout(10)
if m.http.GetResponseCode() <> 200 then
print "Error while trying to get the response, ResponseCode:", m.http.GetResponseCode()
else 'the Response Code was 200(OK)'
response = ParseJson(rsp)
end if
希望这会有所帮助!