使用cordova插件获取高质量的facebook个人资料照片

时间:2017-03-07 05:47:59

标签: facebook facebook-graph-api ionic-framework ionic2

我正在开发离子2应用程序。我正在尝试获得高质量的图像,然后将其调整为头像照片。

我的代码:

 _FBUserProfile() {

return new Promise((resolve, reject) => {
  Facebook.api('me?fields=id,name,email,first_name,last_name,picture.width(600).height(600).as(picture_small),picture.width(360).height(360).as(picture_large)', [])
    .then((profileData) => {
      console.log(JSON.stringify(profileData));
      return resolve(profileData);
    }, (err) => {
      console.log(JSON.stringify(err));
      return reject(err);
    });
});

}

但是,照片质量不好,因为我觉得我在这行调整大小时出了问题:

picture.width(600).height(600).as(picture_small),picture.width(360).height(360).as(picture_large)', [])

如何才能获得高质量的照片?

2 个答案:

答案 0 :(得分:10)

如果您想获取用户的公开个人资料照片,并且您知道来自api电话的用户ID,请使用此网址获取图片

profileData.picture="https://graph.facebook.com/"+profileData.id+"/picture?width=1024&height=1024";

答案 1 :(得分:6)

您有几个解决方案,例如使用type large

id,name,email,first_name,last_name,picture.type(large)

如此处所述:https://developers.facebook.com/docs/graph-api/reference/user/picture/