对于我正在构建的Roku应用程序,我需要获得Vimeo用户的频道列表。这是公共数据,所以我可以用他们的Simple API获取它,看起来像这个例子:
https://vimeo.com/api/v2/user17146517/albums.json
这个请求只需访问url就可以很好地工作——我得到了一个JSON对象数组。请求是在Roku项目中(同步)设置的:
req = createObject("roUrlTransfer")
req.setUrl("https://vimeo.com/api/v2/user17146517/albums.json")
response = req.getToString()
print "response: "; response
回应是空的。当我异步尝试请求时,请求超时,我什么也得不到。我还尝试使用一个经过验证的请求到完整的Vimeo API,但看到了同样的问题。
此代码块适用于其他url。一些简单的东西,比如JSON测试API,会给我返回数据。我在可汗学院找到了一个视频播放列表(http://www.khanacademy.org/api/v1/playlists)格式类似于我想要的Vimeo API,这也很好用。Vimeo做了什么不同于我所错过的?谢谢
要在BrightScript中发出HTTPS/SSL请求,需要显式设置证书文件。试试这个:
req = createObject("roUrlTransfer")
req.setCertificatesFile("common:/certs/ca-bundle.crt")
req.setUrl("https://vimeo.com/api/v2/user17146517/albums.json")
response = req.getToString()
print "response: "; response