我使用的是youtube php Zend API库。
在这个API中,我首先发送请求以获得临时/确认代码。
然后是获取访问令牌的请求。
在此之后,我想获取用户信息,然后向发出另一个请求
https://gdata.youtube.com/feeds/api/users/default
对于当前用户,它返回带有userId 的url
最后,我从xml形式的url中获得了用户信息
我受够了这么多的要求,这也需要很多时间。
有没有其他方法可以通过减少curl/ajax
请求的数量来获得这些东西。
您可以使用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);