【问题标题】:How to get facebook profile image using facebook username withou Oauth using facebook API如何使用 facebook 用户名在没有 Oauth 的情况下使用 facebook API 获取 facebook 个人资料图片
【发布时间】:2015-11-10 22:04:27
【问题描述】:

我已尝试使用此代码。通过 facebook 用户名(字符串)获取 id(数字) 它什么也不返回

     $fb = new Facebook\Facebook([
            'app_id' => $app_id,
            'app_secret' => $secret,
             'default_graph_version' => 'v2.2',
     ]);

    try {


    $request = new Facebook\FacebookRequest(
                             locale,
                             'GET',
                             '/10200410760947768',
                             array(
                               'fields' => 'picture.type(large)'
                             )
                       );

     $response = $request->execute();
     $graphObject = $response->getGraphObject();
     echo '<pre>';
     print_r($graphObject);
     echo '</pre>';
     /* handle the result */
     } catch(Facebook\Exceptions\FacebookResponseException $e) {
          // When Graph returns an error
         echo 'Graph returned an error: ' . $e->getMessage();
         exit;
     } catch(Facebook\Exceptions\FacebookSDKException $e) {
        // When validation fails or other local issues
        echo 'Facebook SDK returned an error: ' . $e->getMessage();
       exit;
     }

当我输入类似示例时,我需要获取个人资料图片:https://www.facebook.com/username/

通过上面的例子,我需要一个没有 Oauth 登录的头像图片 url

【问题讨论】:

  • 不能再使用用户名来识别用户; Facebook 已从 API 中删除了 username 字段,并且不再允许您通过用户名查找用户。如果您想对用户的数据进行任何操作,请先让他们登录到您的应用。

标签: php facebook facebook-graph-api oauth


【解决方案1】:

您只需格式化以下网址就可以了:

https://graph.facebook.com/<FacebookUserExternalId>/picture?type=square

无需身份验证或任何其他要求。

编辑:糟糕,我没有看到您需要根据用户名获取个人资料图片。抱歉,这行不通(我的建议也不是实现您目标的替代方法)。 Facebook 这样做是为了提高安全性和隐私性。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多