所以基本上我想要做的是爲當前正在直播的流實時提供查看器計數。我有一個檢查,看看流是否是活的。你如何不斷地ping API以獲取更新的值,以便我可以將更新的值發送到文檔,在這種情況下,它最終將更新我設置的$viewers
變量。如果它有所不同,我正在使用的應用程序是使用CodeIgniter framework
。以下是我目前必須打電話的代碼。現在我必須重新加載頁面以獲取實際值,並使用cURL來調用API。不斷通過REST API檢查TwitchTV查看器計數
class Streaming {
var $base_url = "https://api.twitch.tv/kraken/";
var $client_id = 'client_id_here';
public function load_stream_stats($channel) {
$curl = curl_init();
curl_setopt_array($curl, array(CURLOPT_RETURNTRANSFER => 1,
CURLOPT_URL => $this->base_url . 'streams/'. $channel .'?client_id=' . $this->client_id
)
);
$result = curl_exec($curl);
//makes sure that the cURL was excuted if not it generates the error stating that it didn't succeed.
if(!curl_exec($curl)){
die('Error: "' . curl_error($curl) . '" - Code: ' . curl_errno($curl));
} else {
//cURL Response worked
if(!empty($channel)) {
$return = json_decode($result);
if($return->stream == null) {
return;
// stream is offline no need to do anything
} else {
$stream_details = array('viewers' => $return->stream->viewers);
// $return->stream->viewers gives a number e.g. 1052
return $stream_details;
}
}
}
curl_close($curl);
}
}
手頭的問題是如何ping TwitchtV API以從REST API獲取更新的查看器計數?
您需要調用腳本來獲取具有ajax的查看器數量。這裏沒有「實時」這樣的東西。您只能在一段時間內進行輪詢。您可能會檢查網站是否每分鐘可以打多少次都有限制。 – mkaatman 2013-03-06 21:28:12
我正在閱讀,如果你提供'client_id',那麼調用API沒有限制。如果我是通過AJAX來完成這項工作的,那麼我將如何編寫代碼來完成這個特定功能的AJAX請求。此功能是我需要檢查間隔的唯一功能。我試圖確保代碼儘可能乾淨,並且易於爲希望使用腳本的其他人實現。 – Elias 2013-03-06 21:33:15
下面是一個示例:http://stackoverflow.com/questions/9436534/ajax-tutorial-for-post-and-get – mkaatman 2013-03-06 21:37:28