-1

我想在博客(wordpress)上向讀者展示文章的份數。所以我決定直接調用API:facebook api打開圖

$fb_call = "https://graph.facebook.com/fql?q=SELECT%20share_count,%20total_count%20FROM%20link_stat%20WHERE%20url='".$url."'" ; 
$response = wp_remote_request ($fb_call ) ; 

這個工作正常,當我測試它自己。但有時候,有100多位讀者同時嘗試訪問不同的帖子,導致錯誤 - 應用請求達到限制。目前的限制似乎是每600秒600個呼叫,每個IP每個標記&。 可能會發生這種情況,因爲圖表API將所有這些請求視爲來自同一用戶。所以我需要在通話中添加一個訪問令牌。 如何在沒有任何登錄詳細信息服務器端的情況下生成令牌,因爲這些文章是使用客戶端腳本共享的,我不應該更改這些腳本。 PHP SDK有一個生成函數,但我相信用戶也必須使用它登錄。感謝您的幫助,如果問題很普通/沒有組織,我很抱歉。

回答

0

您不需要「添加令牌」,您需要減少API調用的數量。無論如何,您無法在服務器上生成令牌 - 除了應用程序令牌之外,您需要爲此創建單獨的應用程序。

無論如何,解決方案要容易得多:您需要在服務器上緩存結果 - 不要爲每個用戶使用相同的API調用。它只是不縮放。此外,它會讓你的頁面更快 - 因爲每個API調用都需要時間。最後但並非最不重要的一點是:FQL已被棄用,它將很快停止適用於所有應用程序(2016年8月7日)。您需要使用Graph API。