标签: facebook-php-sdk

CurlException:28:connect()超时?

今天我尝试使用PHPSDK在Facebook上进行应用程序,我看到ocassionaly显示库中的例外说法 CurlException: 28: connect() timed out!

所以,要检查是否是我的代码错误,我PHPSDK从中下载了最新的库github.然后我试图运行examples/example.php文件几次,之后我查看错误日志,这个错误也在那里(并不总是,看起来像是随机的东西).

我试图在开发者论坛上找到解决方案而没有任何成功,因为我注意到这种问题在过去发生,并且没有人知道原因.

有解决方案吗

谢谢

curl exception facebook-graph-api facebook-php-sdk

10
推荐指数
1
解决办法
6332
查看次数

如何将Facebook SDK登录与cakephp 2.x集成?

似乎很少甚至没有关于Facebook登录与cakephp Auth组件在线集成的最新资源.我找到了以下资源:

  1. 使用cakephp 1.3的旧面包店文章?和旧版本的Facebook SDK
  2. 似乎正在开发的webtechnick的Cakephp插件

除此之外,我没有找到明确的资源.我希望集成尽可能灵活(不使用魔术插件).经过大量研究后,我终于提出了一个体面的解决方案,我今天在这里分享.因为我对蛋糕很新,请提供帮助.

integration cakephp facebook-graph-api cakephp-2.0 facebook-php-sdk

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

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 PHP SDK 3.0.0登录OFFLINE_ACCESS?

使用旧的(2.x)SDK我用它来记录某人的offline_access:

$session = array
(
    'uid' => $userdata['fb_uid'],
    'sig' => $userdata['fb_sig'],
    'access_token' => $userdata['fb_access_token']
);

$facebook->setSession($session);
Run Code Online (Sandbox Code Playgroud)

在新的SDK中,此功能不再存在.我想我需要登录使用:

setPersistentData($ key,$ value)

但这个功能受到保护,我不知道'代码'是什么?我需要这个来登录用户吗?'sig'发生了什么?我不再需要这个吗?

希望有人已经想到这一点,因为文档真的无济于事!

facebook facebook-graph-api facebook-php-sdk

9
推荐指数
1
解决办法
9808
查看次数

PHP SDK 3.1.1 getUser()有时会返回0

这让我疯狂> =(

$ facebook-> getUser()有时运行良好,但有时会返回0

这是我的代码: require 'fbapi/facebook.php';
$facebook = new Facebook(array(
'appId' => 'xxx',
'secret' => 'xxxxx',
));
$user = $facebook->getUser();

应用标识秘密是正确的.

这可能是getUser有时会返回0的原因???

php facebook-iframe facebook-graph-api facebook-authentication facebook-php-sdk

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

如何使用facebook SDK注销用户?

我正在使用facebook登录我的网站facebook php sdk.

我注意到的是logout链接没有做任何事情.在我注销后,用户仍然可以浏览该站点.这是我的代码facebook.php:

<?php
    require 'src/facebook.php';
    $facebook = new Facebook(array(
           'appId'  => '*************',
           'secret' => '******************************',
    ));
    $user = $facebook->getUser();
    $loginUrl = $facebook->getLoginUrl();
    echo "<a href='$loginUrl'>login</a>";

    $logoutUrl = $facebook->getLogoutUrl();
    echo $loginUrl; 
    if($user){
        session_start() ; 
        $_SESSION['user_info'] = $user; 
        $_SESSION['user_pro']= $facebook->api('/me');
        print_r($_SESSION);
    }
    else{
        echo 'not logged in '; 
    }

    echo "<a href='example.com/logout.php'>log out </a>"
?>
Run Code Online (Sandbox Code Playgroud)

code在登录时工作正常.注销链接应该销毁会话.这是页面的标题:

<?php 
    print_r($_SESSION) ; 
    header('example.com') ; 
?>
Run Code Online (Sandbox Code Playgroud)

我的logout.php页面的问题是它根本检测不到会话.我不知道这是一个facebook api问题还是我的php问题. …

php facebook facebook-graph-api facebook-php-sdk

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

FacebookSDKException:会话未激活,无法存储状态

我不明白为什么我得到这个例外:

Session not active, could not store state.
Run Code Online (Sandbox Code Playgroud)

代码是:

<?php

require 'vendor/autoload.php';

use Facebook\FacebookSession;
use Facebook\FacebookRedirectLoginHelper;

FacebookSession::setDefaultApplication('foo', 'baz');

$helper = new FacebookRedirectLoginHelper('bar');
$loginUrl = $helper->getLoginUrl();

?>
Run Code Online (Sandbox Code Playgroud)

请帮忙.

facebook-php-sdk

9
推荐指数
1
解决办法
9773
查看次数

错误(#200)用户未授权应用程序执行此操作

我想用PHP发送消息到Facebook页面,但我有这个错误

(#200)用户未授权应用程序执行此操作.

我是Facebook页面和Facebook应用程序的管理员.

我想我有这个问题因为我没有很好的权限,但我不知道怎么做.

我在网上搜索了许多相同问题的网页,但我找不到答案.

他们是我的权限.

array(1) {
         ["data"]=> array(3) {
                     [0]=> array(2) {
                         ["permission"]=> string(9) "installed"
                         ["status"]=> string(7) "granted"
                         }
                     [1]=> array(2) {
                         ["permission"]=> string(14)"public_profile"
                         ["status"]=> string(7) "granted" 
                     }
                    [2]=> array(2) {
                         ["permission"]=> string(12) "manage_pages"
                         ["status"]=> string(7) "granted" } } } 
Run Code Online (Sandbox Code Playgroud)

这是我的代码.

$permissions = 'manage_pages, publish_stream';
$fb = new Facebook(array('appId'=>$appId, 'secret'=>$secret));

 $fbuser = $fb->getUser();
 if($fbuser){
    $permissions = $fb->api('/me/permissions');
    if(isset($_POST['msg']) and $_POST['msg']!=''){
        try{
            $message = array(
                'access_token' => $token,
                'message' => $_POST['msg']
            );
         //   $posturl = '/'.$_POST['pageid'].'/feed';
            $posturl = '/me/feed'; …
Run Code Online (Sandbox Code Playgroud)

php facebook facebook-graph-api facebook-php-sdk

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

将Facebook广告系列目标与洞察操作类型相匹配

Facebook的广告中有一个客观这里列出(PAGE_LIKES,VIDEO_VIEWS,等).

Facebook的见解列表中的用户行为这里列出(like,video_view,等,但也有一些缺失,unlike例如).

问题是:客观和行动不匹配.例如,有一个PAGE_LIKES目标和一个like动作.

Facebook电源管理器中有一个"结果"列,为每个广告系列提供与广告系列目标匹配的用户操作计数(在下图中获得992like).

电源管理器

似乎在洞察中没有这样的东西(在api和sdk中都没有),那么识别广告系列转换计数的正确方法是什么(在电源管理器中命名为"结果")?

我们必须手动维护PAGE_LIKES <-> like吗?如果是这样,那么正确的映射是什么?

facebook facebook-graph-api facebook-ads-api facebook-php-sdk facebook-marketing-api

9
推荐指数
1
解决办法
1141
查看次数

使用启用严格模式的Facebook PHP SDK登录时出错

我收到了来自Facebook的通知,说他们将使来自2018年3月的有效OAuth重定向URI中未列出的URI的调用无效,我认为他们要求我们为重定向URI 启用严格模式.关于此的链接可以在这里找到.

我一直使用他们的PHP SDK禁用严格模式一年没有任何问题,但是当我启用严格模式并在那里放置重定向网址:https://nino-dot-dynamic-osprey-93721.appspot. com/admin/fb-callback_admin.php - 每当我尝试使用Facebook登录时,它会返回如下所示的错误:

Graph returned an error: Can't Load URL: The domain of this URL isn't included in the app's domains. To be able to load this URL, add all domains and subdomains of your app to the App Domains field in your app settings.
Run Code Online (Sandbox Code Playgroud)

请注意,我只是使用FB的默认PHP SDK登录代码(https://developers.facebook.com/docs/php/howto/example_facebook_login),其中包含login.php和fb-callback.php链接,我不使用任何自定义OAuth工作流程.

我注意到生成的重定向URL包含代码状态参数:

site.com/admin/fb-callback_admin.php?code=somecode&state=somestate
Run Code Online (Sandbox Code Playgroud)

我认为这就是我收到错误的原因,因为它只需要https://nino-dot-dynamic-osprey-93721.appspot.com/admin/fb-callback_admin.php的重定向网址,而没有任何尾随参数.

考虑到重定向URL通过以下代码的响应,您如何考虑解决此问题的启用严格模式:

$helper = $fb->getRedirectLoginHelper();
$permissions = ['email']; // Optional permissions
$loginUrl = …
Run Code Online (Sandbox Code Playgroud)

facebook facebook-php-sdk facebook-login

9
推荐指数
1
解决办法
3934
查看次数