相关疑难解决方法(0)

持久的FB访问令牌,用于服务器提取FB页面信息

我知道有很多关于Facebook访问令及其引起的悲痛的问题,但尽管进行了大量实验并阅读了许多令人沮丧的模糊博客文章(FB等),我仍然在努力为我的需求做出明确的回答.到目前为止,让我简洁地分解我的过程:

  • 我正在创建一个站点,服务器端,需要从单个Facebook页面提取帖子/状态
  • 我是Facebook页面的管理员
  • 我创建了一个Facebook应用程序
  • 使用Facebook Graph API Explorer,我生成了一个短链密钥,连接到我的应用程序和我的帐户,授予我的帐户权限以查看我的网页的访问令牌
  • 我已经将我短暂的键从一个长寿命密钥(60天)ALA方案4

而这就是我被困的地方.我的60天密钥适用于我的服务器从页面中提取所需的信息,但据我所知,没有办法以编程方式扩展该60天密钥.我也不知道如何生成新的短期密钥,而无需手动访问Facebook Graph API Explorer并创建一个.

由于我的服务器向Facebook API发出请求而不是基于用户的系统(我可以轻松地请求用户再次授权Facebook应用程序),这会创建一个非常笨重的系统.由于Facebook已offline_access被弃用,是否真的没有永久的方法让我的服务器从我自己的页面提取信息?我是否真的需要手动创建一个新密钥并每60天手动更新一次我的服务器?

还是有什么我想念的?

更新:

之前在此处找到的分步指南已经迁移到自己的答案中.

facebook facebook-graph-api facebook-access-token

113
推荐指数
3
解决办法
4万
查看次数

用于页面的Facebook访问令牌

我有一个Facebook页面,我想从中获取一些东西.第一件事是提要,从我读到的它们是公开的(不需要access_token).但是我也希望得到这些事件......它们不是公开的,需要access_token.

我不希望用户登录Facebook或类似的东西.我只是想从这个唯一的页面推送所有数据.这就是为什么我已经放弃了我在这里找到的许多例子以及https://developers.facebook.com/blog/post/500/上的例子,因为他们希望用户登录或需要一些用户操作我并不感兴趣.

我想要的是我的Facebook应用程序具有完全授权和access_token来推送我拥有的这个Facebook页面(管理员)的数据.这可能吗?我已经尝试了很多东西但似乎没什么用.

我试着点击这个:https://www.facebook.com/dialog/oauth? client_id = 150635421702954 & redirect_uri = http : //MY_URL/& scope = manage_pages & response_type = token & fields = access_token - 将MY_URL更改为我的网站,并请求授权编辑每个我拥有的页面.甚至不是我想要的我点击但没有access_token作为回报...

facebook oauth facebook-page facebook-graph-api access-token

111
推荐指数
3
解决办法
16万
查看次数

Facebook页面访问令牌 - 这些是否过期?

我正在构建一个应用程序,允许用户管理他们的Facebook粉丝页面.这需要以下两个访问令牌:

  1. 用户访问令牌
  2. 页面访问令牌

我对用户访问令牌非常熟悉,但对页面访问令牌却不熟悉.

有人知道页面访问令牌保持有效的时间吗?我在Facebook网站上找到的就是这个简洁的段落,它没有提到任何有关它到期的内容.

我是否可以假设,如果我使用权限请求用户访问令牌,则offline_access页面访问令牌也将无限期地持续(除非用户更改其密码或手动取消授权我的应用程序)?

我问,因为我想知道我应该多久查询一次Facebook Graph API并获取页面访问令牌.我应该在用户注册时简单地请求一次吗?或者,如果他们不断更改,我应该为每个API调用请求一个吗?后者显然更加沉重!

facebook facebook-page facebook-graph-api access-token

71
推荐指数
3
解决办法
4万
查看次数

为Facebook页面生成"永不过期"的访问令牌

我已经设法通过API(C#)发布到Facebook页面,但是当页面管理员注销时,会发生以下错误:

"(OAuthException - #190)验证访问令牌时出错:会话无效,因为用户已注销."

如何生成永不过期的访问令牌?

我需要一个无法打开Facebook登录对话框的解决方案.

facebook

56
推荐指数
3
解决办法
9万
查看次数

必须使用app access_token调用此方法

经过几天的搜索论坛/网络,我仍然无法让它消失并使用SCORE图形api

{
  "error": {
  "message": "(#15) This method must be called with an app access_token.", 
  "type": "OAuthException", 
  "code": 15
  }
}
Run Code Online (Sandbox Code Playgroud)

在图形api资源管理器上我尝试使用它(激活了publish_actions权限并选择了POST):

https://graph.facebook.com/100003429183160/scores?score=555&access_token=APP_ACCESS_TOKEN
Run Code Online (Sandbox Code Playgroud)

没有运气:(

我做了以下事情:

•将我的应用程序设置为GAME,基本信息,设置Auth Dialog

•设置Open Graph类型,对象,聚合

•通过访问令牌工具使用/验证正确的APP ACCESS_TOKEN(而不是用户access_token)

•使用publish_actions权限

•确保使用POST作为方法

•尝试将appID | appSecret作为app access_token

•确认我确实安装了该应用程序

•能够通过图形api发布到墙上,拉出朋友列表和照片等.

还有什么线索可能导致这不能用Graph API Explorer运行?

facebook facebook-graph-api

18
推荐指数
2
解决办法
2万
查看次数

Automaticall在我的网站上嵌入了最新的Facebook帖子

Facebook推出了嵌入式帖子(https://developers.facebook.com/docs/plugins/embedded-posts/).但它只允许我在我的网页上嵌入一个特定的帖子.

我想自动将我们公司的Facebook个人资料中的最新facebook帖子嵌入到我们的网页中.那可能吗?

facebook

18
推荐指数
2
解决办法
3万
查看次数

使用Facebook API获取页面的所有照片

我是Facebook API的新手,但我必须从Facebook页面获取所有照片.我设法得到一个图形api查询,它返回页面上第一个创建的专辑的所有图片,这是专辑图片专辑.例如:

https://graph.facebook.com/227843870675663/photos
Run Code Online (Sandbox Code Playgroud)

但是我需要对页面中的所有其他现有专辑执行相同的操作.任何指针都非常感激.

api facebook photo facebook-page

13
推荐指数
2
解决办法
4万
查看次数

Laravel Socialite错误:"必须使用活动访问令牌来查询有关当前用户的信息."

Socialite用来通过Facebook验证我的用户.但是,我无法让它发挥作用.我按照教程,但收到以下错误:

在此输入图像描述

我到处寻找并尝试过任何事情,但我无法让它发挥作用.这是我的代码:

在services.php中:

'facebook' => [
    'client_id' => '[My App ID]',
    'client_secret' => '[My App Secret]',
    'redirect' => 'http://localhost:8000/auth/facebook/callback/',
],
Run Code Online (Sandbox Code Playgroud)

我的路线:

Route::group(['middleware' => ['web', 'requestlog']], function () {   
    Route::get('auth/facebook', 'Auth\AuthController@redirectToProvider');
    Route::get('auth/facebook/callback/', 'Auth\AuthController@handleProviderCallback');
});
Run Code Online (Sandbox Code Playgroud)

然后在我的AuthController中:

use Laravel\Socialite\Facades\Socialite;

public function redirectToProvider()
{
    return Socialite::driver('facebook')->redirect();
}

public function handleProviderCallback()
{
    try {

        $providerUser = Socialite::driver('facebook')->user();
        dd('yay it worked!');

      } catch (RequestException $e) {

      dd($e->getResponse()->json());

    }
}
Run Code Online (Sandbox Code Playgroud)

然后我在FB中有这些设置:

在此输入图像描述

在此输入图像描述

出了什么问题?据我所知,我遵循了所有必要的步骤.我不明白这里有什么问题.我希望我提供了所有必要的信息!

编辑

以下是错误显示页面上的url的样子: http://localhost:8000/auth/facebook/callback?code=AQBtnKEqZgImLqN7f3hETe9GptgzFH71sXrV5qmv8Rpo6Oj5-4rl8mBjFPbfkBtiV8w9atV7X4OrWfHyalJkXU-k6lkEv1bly6v5Qxm2es-_RRp8gfoSWOZwjqE34Rvq6__L3aEOERPEa9LSBk_rKVP_cYGZoQeAydRLQUZVGdr_p1SuE1hRZIvZTAZ-zorkPoyyCDNZtDEVFHGRJt_c3kTf_AKE97FVemrXrUDzxaX-rvovKtfGF3u4CvAIt5pe4g7zD30jAWF78ZgjjPpr21MdaGwP5V0tc8g84oz0dR5Nbit7sKeUE-XblWFrQCIKfqs-OJ6rcuzw7iPTx6xrQ9Ev&state=4f924a9974207482c6fce24c1d74705c6688adc0#_=_

我也尝试过隐身模式,删除cookie等等.结果相同......

php facebook facebook-php-sdk laravel laravel-5.2

10
推荐指数
2
解决办法
2931
查看次数

Facebook - 永久用户访问令牌

我的公司有一个企业Facebook帐户,他们在不同的专辑中发布活动照片.我的要求是从Facebook专辑中获取所有照片并在我们的公司网站上显示.我可以获取照片,但用户访问令牌仅在60天内有效,这意味着每隔两个月我将必须登录公司的公司Facebook帐户,重新生成令牌并更新我的应用程序中的令牌.

有没有办法生成永久访问令牌?或者以任何方式在我的应用程序级别重新生成令牌(没有显示登录对话框)?

有没有其他方法可以在不创建应用程序的情况下获取照片?

facebook access-token

7
推荐指数
1
解决办法
1万
查看次数

使用客户端令牌/匿名访问 Facebook Graph API?

我正在开发一个 iOS 应用程序,其中用户需要能够在没有 Facebook 登录的情况下访问 Facebook Graph API(因为他们以仅限电子邮件的方式注册了我的应用程序)。他们主要需要检索其他 Facebook 用户的公共提要(名人等),以便我可以在关于框中显示该信息。在旧的 API 中,我相信这被称为公共帖子搜索或离线访问,但这些似乎已被 Facebook 弃用。我想知道直接使用 app-id 作为令牌是否可行:

如何为没有应用程序或应用程序机密的页面获取 Facebook 访问令牌

取而代之的是,我可以在以下位置使用“客户端令牌”:

https://developers.facebook.com/apps/ {your-app-id}/settings/advanced/

随着:

[FBAccessTokenData createTokenFromString:]
[FBSession openFromAccessTokenData:]
Run Code Online (Sandbox Code Playgroud)

使用我的应用程序凭据将用户登录到 Facebook?另一种选择可能是以编程方式匿名登录用户:

https://developers.facebook.com/products/anonymous-login/

我很难在 FacebookSDK.framework 中找到相应的调用。我能找到的唯一提到的“匿名”是:

[FBSettings setClientToken:]
Run Code Online (Sandbox Code Playgroud)

来自文档:“为 Facebook 应用程序设置客户端令牌。匿名进行某些 API 调用时需要这样做,没有基于用户的会话。”


如果这一切都不可能,那么我可能需要回退到使用 node.js 服务器从应用程序令牌为用户生成长期存在的令牌。这在“从服务器端长寿命令牌生成长寿命用户令牌”部分中讨论:

https://developers.facebook.com/docs/facebook-login/access-tokens

我看到如何在这里获得令牌:

https://developers.facebook.com/tools/access_token/

https://developers.facebook.com/tools/explorer/?method=GET&path=me%3Ffields%3Did%2Cname&version=v2.2

然后使用 node.js 以某种方式扩展它并将其传递给客户端:

facebook:永久页面访问令牌?

无需 Facebook 登录即可获取新的访问令牌

或者通过使用 app_id|app_secret 代替令牌来完全跳过获取令牌:

尝试获取应用访问令牌

但尚不清楚如何将其从 node.js 传递回客户端。我对所有这些感到非常困惑,不明白为什么没有更好地记录使用图形 API 访问公共数据。我有在 iOS 中工作的普通用户登录,如果我能找到一个匿名登录示例,我可以改编一个来自网络的匿名登录示例。任何例子将不胜感激。

更新:

这些说明这些文档帮助我从可用于 Facebook API 访问的应用程序 ID 创建了一个长期存在的令牌。目前这是通过像 php 这样的后端服务器完成的,但可能可以通过 URL 请求使其适应 …

facebook anonymous token facebook-graph-api ios

5
推荐指数
0
解决办法
3825
查看次数