0

私は Codeignitor を使用しています。

アプリケーションから Facebook に投稿したいと考えています。

問題は、ログインしていないことが常に返されることです。

ここで私が試したこと..

function postTofb()
{


require_once("pocket/fb/facebook.php");
        $fbconfig = array();
        $fbconfig['appId'] = 'app_id';
        $fbconfig['secret'] = 'app_secret';
        $fbconfig['baseurl']    = "site_name";

                $facebook = new Facebook($fbconfig);
        $user = $facebook->getUser();


               if($user)
           {
            try {

                $user_profile = $facebook->api('/me');
            $ID = $user_profile['id'];
            echo $ID;

                 } 
        catch (FacebookApiException $e) 
        {

        echo $e;

             }


        }
        else
        {

        //else starts

            $loginUrl   = $facebook->getLoginUrl(
            array(
                'scope'=> 'email,offline_access,publish_stream,user_birthday,user_location,user_work_history,user_about_me,user_hometown',
                'redirect_uri'=>$fbconfig['baseurl']
            )
        );
    $data["status"] = FALSE;
    $data["url"] = $loginUrl;
    echo json_encode($data);
    //else ends
        }
    }

今、私はajaxを介して関数を呼び出しています...しかし、常にFALSEで応答します.else部分を意味します。

ここで私が得ているもの

{"status":false,"url":"https:\/\/www.facebook.com\/dialog\/oauth?client_id=281255791959236&redirect_uri=http%3A%2F%2Fwww.MY_SITE_NAME.com%2F&state=3d19a96f48022344222f518609f30537&scope=email%2Coffline_access%2Cpublish_stream%2Cuser_birthday%2Cuser_location%2Cuser_work_history%2Cuser_about_me%2Cuser_hometown"}

私はいくつかのポイントを逃したように見えます...助けてください..

ありがとうございました。

4

2 に答える 2

0

問題はLoginUrlに関連していました

いくつかの権限パラメーターを削除しましたが、機能しました。

loginUrl = $facebook->getLoginUrl(array("scope")=>"publish_stream");

ありがとうございました。

于 2012-04-24T05:21:21.347 に答える
0

オフライン アクセスは facebook でサポートされなくなりました。できることは、最大 60 日間のトークンを生成することだけです。

于 2012-04-23T16:38:21.007 に答える