0

PHP Web サイトからユーザーの Facebook ウォールにページを共有する必要があります。ユーザーが Facebook にログインしていない場合、私の Web サイトは Facebook のログイン ページにリダイレクトされます。

    $user = $facebook->getUser();
    if($user) {
        $result = $facebook->api(
            '/me/feed/',
            'POST',
            array('access_token' => $this->access_token, 'link'=>'google.com', 'message' => 'Test link')
        );
        $this->Session->setFlash('Your link has been succesfully posted on your wall');
        $this->redirect($this->referer());
    }else {
       $login_url_params = array(
          'req_perms' => 'publish_stream',
          'redirect_uri' => 'localhost/pictrail' //thts the same path I gave to my facebook app
       );
       $login_url = $facebook->getLoginUrl($login_url_params);
       header("Location: {$login_url}");
       exit();
    }

そのため、ユーザーが facebook にログインしていない場合、ユーザーがログインするために facebook にリダイレクトされ、その後、そこに入力した URL に関係なく、localhost/pictrail にリダイレクトされます。localhost/pictrail/images/param にリダイレクトしたい...どうすればこれを達成できますか? 「localhost/pictrail/images/99」を試しましたが、うまくいきませんでした。ユーザーが Facebook にログインすると、すべて正常に動作します。

4

1 に答える 1

0

localhost有効なアドレスではないため、Facebook から にリダイレクトできません。

開発のためにこれを回避した方法は、ファイルを編集hostsし、ドメインをローカル IP に置き換えることでした。

www.example.com 127.0.0.1

次に、Facebook アプリから www.example.com にリダイレクトすると、ローカルの開発バージョンがレンダリングされます。

このドメインをローカル サーバーの vhost などに必ず追加してください。


申し訳ありませんが、私はあなたの質問を読み違えました。Facebook リダイレクト URL を変更するには、Facebook アプリで変更する必要があります。そのため、カスタム フィールドを Facebook に渡して、後で元に戻す必要があります。

https://developers.facebook.com/docs/authentication/server-side/をご覧ください。

于 2012-07-27T09:54:29.890 に答える