首页
学习
活动
专区
圈层
工具
发布

如何在回调函数之外使用FB.api(JS SDK)响应?

在回调函数之外使用FB.api(JS SDK)响应的方法是使用Promise或者async/await。以下是两种方法的示例:

  1. 使用Promise:
代码语言:javascript
复制
function getFacebookData() {
  return new Promise((resolve, reject) => {
    FB.api('/me', 'GET', { fields: 'email, name' }, response => {
      if (response.error) {
        reject(response.error);
      } else {
        resolve(response);
      }
    });
  });
}

getFacebookData()
  .then(data => {
    console.log('Facebook data:', data);
  })
  .catch(error => {
    console.error('Error getting Facebook data:', error);
  });
  1. 使用async/await:
代码语言:javascript
复制
async function getFacebookData() {
  return new Promise((resolve, reject) => {
    FB.api('/me', 'GET', { fields: 'email, name' }, response => {
      if (response.error) {
        reject(response.error);
      } else {
        resolve(response);
      }
    });
  });
}

(async () => {
  try {
    const data = await getFacebookData();
    console.log('Facebook data:', data);
  } catch (error) {
    console.error('Error getting Facebook data:', error);
  }
})();

这两种方法都可以在回调函数之外处理FB.api的响应。Promise是一种处理异步操作的模式,async/await是基于Promise的一种更加简洁的写法。在这两个示例中,我们都使用了Promise来处理FB.api的响应,并在回调函数之外获取响应的数据。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的文章

领券