作者:蘑菇雪雪_585 | 来源:互联网 | 2023-08-28 15:04
我已经在应用程序中实现了社交身份验证,并且成功获得了访问令牌。
但是,当我使用该访问令牌获取用户的公开个人资料时,只会得到用户的ID和用户名。
我无法获得用户的其他属性,例如用户的个人资料图片。
当我尝试此操作时:
Json = await httpClient.GetStringAsync($"https://graph.facebook.com/v5.0/{userWithOnlyId.Id}?access_token={accessToken}");
我只获得用户的ID和名称。
当我按照this facebook doc中的说明进行操作时:
await httpClient.GetStringAsync(
$"https://graph.facebook.com/me?fields=profile_pic&access_token={accessToken}");
我收到403禁止的错误。
我做错了什么吗?我已经尝试了一些在stackoverflow上找到的方法,但是到目前为止,我还没有解决方案。
有一个示例(部分:检索个人资料):
https://graph.facebook.com/?fields=first_name,last_name,profile_pic&access_token=
您似乎需要提供一个PSID
ASID(应用程序范围的ID)-这是每个应用程序唯一的用户ID。
这意味着该用户将为每个应用程序使用不同的ASID。我认为您只有一个应用。
要从应用程序范围的ID中获取页面范围的ID,请将POST请求发送至
/ pages_id_mapping根节点