2012-12-18 6 views
5

私はyoutube php Zend API Libraryを使用しています。Youtube PHP APIを使用するにはより良い方法があります

このAPIでは、まず、一時的な/確認コードを取得するリクエストを送信します。

次に、アクセストークンを取得する要求。

この後、私は、ユーザー情報を取得したいし、別の要求は、現在のユーザーのために

https://gdata.youtube.com/feeds/api/users/default 

になりますそれがユーザID

でURLを返しそして、最終的に私はあるもののURLからユーザー情報を取得xml形式で

私はこれらの非常に多くのリクエストにうんざりしているので、時間もかかります。

curl/ajaxリクエストの数を減らすことで、これらの問題を解決する別の方法がありますか?

+0

複数のユーザーにクエリする必要があり、時間がかかるという問題がありますか? – Ranty

+0

はい問題に言及しました –

答えて

1

curl_multi_*を使用すると、異なるユーザーのリクエストを並行して処理できます。 1人のユーザーごとにプロセスを高速化するわけではありませんが、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); 
関連する問題