0

私はプロジェクトに取り組んでいます。ユーザーにfacebookでログインしてもらいたい。しかし、Facebook 認証の後、次のエラーが表示されます。

指定された URL は、アプリケーションの構成で許可されていません。: 指定された URL の 1 つ以上が、アプリの設定で許可されていません。ウェブサイトの URL またはキャンバスの URL と一致するか、ドメインがアプリのドメインのいずれかのサブドメインである必要があります。

Google で長い間検索しましたが、Facebook アプリケーションのドメイン名に問題がある可能性があるという回答が得られるたびに.

fb アプリケーションを何度も変更しましたが、毎回同じエラーが発生します。

私のFacebookアプリケーションのいくつかの設定は次のとおりです。

アプリ ドメイン: superhitdomains.com
サイト URL: http://superhitdomains.com
私のビュー ページは:

フェイスブックでログイン

私のコントローラーは次のとおりです。

if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Social extends CI_Controller 
{
    public function __construct()
    {
        parent::__construct();
        parse_str( $_SERVER['QUERY_STRING'], $_REQUEST );
        $CI = & get_instance();
        $CI->config->load("facebook",TRUE);
        $config = $CI->config->item('facebook');
        $this->load->library('Facebook', $config);
    }

    public function fb_request()
    {
       $userId = $this->facebook->getUser();
       if($userId == 0)
       {
          $data = array(
            'redirect_uri'=> base_url().'social/handle_user_fb_login',
            'scope'=>'email'
          );
          redirect($this->facebook->getLoginUrl($data));
          //print_r($data); exit;
       }
       else 
       {
         // Get user's data and print it
         $user = $this->facebook->api('/me');
         print_r($user);    
       }
    }

    public function handle_user_fb_login()
    {
        $userId = $this->facebook->getUser();
        if($userId !=0)
        {
            $user = $this->facebook->api('/me');
            print_r($user); 
        }
        else
        {
            echo 'could not connected with facebook';
        }
    }
}

私のコードの何が問題なのか、誰か助けてもらえますか?

ありがとう

4

1 に答える 1

0

base_url().'social/handle_user_fb_login'あなたがユーザーをリダイレクトするのに無効なURLであると想定しても安全だと思います。Facebook アプリをチェックして、base_url()実際にキャンバス URL または Web サイト URL として言及されていることを確認してください。

これは Facebook が強制するもので、Facebook 自身のサイトがそれに応じてユーザーをリダイレクトし、(他の) 悪意のあるサイトに直接送信しないようにします。

于 2013-09-09T12:24:43.130 に答える