有没有更好的方法来使用Youtube PHP API

时间:2012-12-18 07:03:26

标签: php ajax curl youtube youtube-api

我正在使用youtube php Zend API Library。

在此API中,我首先发送请求以获取临时/确认代码。

然后是获取访问令牌的请求。

在此之后,我想获取用户信息,然后另一个请求进入

https://gdata.youtube.com/feeds/api/users/default  
当前用户的

它返回带有userId

的网址

然后我终于从该网址获取xml格式的用户信息。

我厌倦了这么多的请求,也花了很多时间。

是否有另一种方法可以通过减少curl/ajax请求的数量来获取这些内容。

1 个答案:

答案 0 :(得分:1)

您可以使用curl_multi_*并行处理对不同用户的请求。它不会加速每个用户的流程,但由于你可以并行执行10-30个或更多请求,它将加快整个交易。

唯一的复杂因素是每个请求都需要单独的cookie文件。以下是启动您的示例代码:

$chs = array();
$cmh = curl_multi_init();
for ($t = 0; $t < $tc; $t++)
{
    $chs[$t] = curl_init();
    // set $chs[$t] options
    curl_multi_add_handle($cmh, $chs[$t]);
}

$running=null;
do {
    curl_multi_exec($cmh, $running);
} while ($running > 0);

for ($t = 0; $t < $tc; $t++)
{
    $contents[$t] = curl_multi_getcontent($chs[$t]);
    // work with $contencts[$t]
    curl_multi_remove_handle($cmh, $chs[$t]);
    curl_close($chs[$t]);
}
curl_multi_close($cmh);