0

私が構築している Roku アプリでは、Vimeo ユーザーのチャンネルのリストを取得する必要があります。これは公開データなので、次の例のようなシンプルな 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 Test API のような単純なもので、データが返されます。Khan Academy ( http://www.khanacademy.org/api/v1/playlists ) で、ヒットしたい Vimeo API と同様にフォーマットされたビデオ プレイリストのリストを見つけましたが、これもうまく機能します。私が見逃している Vimeo の違いは何ですか? ありがとう!

4

1 に答える 1

6

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
于 2015-02-21T21:47:09.580 に答える