17

私のクライアント企業は、数千の中小企業の Facebook ページを管理しています。クライアントがプロセスを簡素化し、多くの/すべてのページを一度にすばやく変更できるようにする Facebook アプリを構築しました。

ビジネス上の理由が何であれ、クライアント企業には、これらの各ページの管理者として(小規模ビジネスのオーナーとともに)1 人の従業員しか追加されていません。このユーザー アカウントはアプリを追加し、ページ トークンを取得し、それらのページ トークンを使用してページを管理します (連絡先情報の変更、タブの追加、ウォール投稿の取得)。非常に厳しい API リクエストの制限に直面しています。現在、新しい Facebook ページは 1 分間に約 3 つしか追加できません (すべてを完了すると、おそらく 6 ~ 10 回の API 呼び出しが必要になると思います)。

アクセス トークンに対して約 600 リクエスト/600 秒が許可されていると見積もる人を見てきましたが、ページ トークンを使用してほとんどの作業を行っていたため、アクションは 1 つの API 制限にはカウントされないと思いました。

技術的に同じユーザーに属している場合でも、API の制限が個々のトークンに基づいているかどうかを確実に知っている人はいますか? これらのページに管理者を実際に追加できないことを考えると、この制限を回避する方法はありますか?

4

3 に答える 3

2

実際には非常に単純です。ユーザーではなく、PAGE のアクセス トークンを要求するだけです。

    $mQuery=array('access_token'=> 'SELECT access_token FROM page WHERE page_id = 'page_id,    
                  'album_id'=> 'SELECT object_id FROM album WHERE owner = '.page_id.' AND name = "Timeline Photos"');
    $multiQueryResult = $facebook->api(array('method'=>'fql.multiquery', 'queries'=>$mQuery));

最初の行はそのユーザーのアクセス トークンを取得し、2 行目はマルチクエリを使用するための単なる例であり、呼び出しを減らします。

マルチクエリで最大 50 個のクエリを使用できます

また、ページでいくつかのことを行いたい場合は、バッチ リクエストを使用できます。これはステータスを投稿する例です。同じ呼び出しで 50 個のバッチ リクエストまで追加できます。

$v['body']['message']=htmlspecialchars_decode($v['message'], ENT_QUOTES);
$v['body']['scheduled_publish_time']=strtotime($v['scheduled_publish_time']);
$v['body']['published']='false';
$v['body']=http_build_query($v['body']);
$batch[]=$v;

try {
    $batchresult = $facebook->api("/?batch=".urlencode(json_encode($batch)), 'POST', array('access_token'=>$access_token));
} catch (FacebookApiException $e) {
    echo $e->getMessage(); 
}
echo $batchresult;

お役に立てれば。

于 2013-03-23T10:53:46.910 に答える
2

@Julio Popócatl が言及したように、ページ アクセス トークン (有効期間の長いユーザー トークンから生成されたもの) を使用するのが適切な選択である可能性があります。

これらのページ アクセス トークンは、一度正しく生成されると、期限切れになることはないため、実行する必要があるクエリが少なくとも 1 つ少なくなります。

API リクエストの制限は、ユーザー、ページ、アプリなど、あらゆるリクエストに適用されます。要求のソースが何であれ、彼らは常に Facebook スキーマに何かを要求しています。

各リクエストを個別に行うよりも、1 回 (またはそれ以下) のリクエストで複数のデータを取得できるため、バッチ リクエストを使用することもお勧めです。

于 2013-04-17T11:37:44.897 に答える
-3

非常に厳しいAPIリクエストの制限に直面しています。現在、1分間に追加できる新しいFacebookページは約3つだけです。

私はこれを「厳しい」制限とはまったく呼びません。多数のアプリが数分で数百または数千のページを作成するとどうなるかを想像してみてください...spamSpam SPAM !! 1

アクセストークンには約600リクエスト/600秒が許可されていると人々が見積もっているのを見てきましたが、ページトークンを使用してほとんどの作業を行っていたため、アクションは単一のAPI制限にカウントされないと思いました。

制限は、アプリIDのみに基づいて適用されます。APIで何をしているのか、誰(ユーザー、ページ)としては関係ありません。

この制限を回避する方法はありますか

短時間で多数の新しいページを追加することは、私にはスパムのように聞こえます。私はそれをしたいと思う正当な理由を考えることができません。

于 2013-03-07T18:13:23.407 に答える