簡體   English   中英

Facebook Graph API-訪問用戶的照片時如何避免請求限制?

[英]Facebook Graph API - How to avoid request limits when accessing a user's photos?

我需要使用Facebook Graph API來獲取用戶照片和相冊。

據我了解(在閱讀文檔時),這是一個兩步過程,1.從photos邊緣獲取每張照片的ID,2.使用返回的ID數組,獲取單個照片節點。

提取單個照片節點可能意味着每秒數百個請求,而我的個人資料上有很多照片,經過幾分鍾的測試,我達到了應用程序請求限制。

為了避免請求限制,也許有一種方法可以一次(或以更少的請求)獲取所有照片?

示例實現:

  ...

  var photos = [];

  function fetchPhotos(){
    fetch('https://graph.facebook.com/v3.1/me/photos?type=uploaded&access_token=' + accesstoken, {
      method: 'GET'
    })
    .then(photos => photos.json())
    .catch(error => console.error('Error:', error))
    .then(photos => {

      this.fetchPhoto(photos);

    });
  }

  function fetchPhoto(photos){
    for(var i=0; i < photos.data.length; i++){
      fetch('https://graph.facebook.com/v3.1/' + photos.data[i].id + '?fields=link,width,height&access_token=' + accesstoken, {
        method: 'GET'
      })
      .then(photo => photo.json())
      .catch(error => console.error('Error:', error))
      .then(photo => {

        photos.push(photo);

      });
    }
  }

  ...

謝謝!

您只需一次調用就可以獲取所有字段的列表:

https://graph.facebook.com/v3.1/me/photos?fields=link,width,height&access_token=...

旁注:如果這是客戶端代碼,為什么不使用官方的JS SDK? 這樣,您無需處理訪問令牌,它會自動添加。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM