0

私はこのシナリオを持っています。MVC Webアプリでは、URLを書き換えています。

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l

RewriteRule ^(.+)$ index.php?url=$1 [QSA,L]

したがって、URLは次のようになります。

http://mysite.com/ControllerName/MethodName/Param1/Param2.......

次に、アプリにFacebookログインを実装する必要があります。gitのsdkページからコードをコピーして貼り付けるだけです

require 'facebook-php-sdk/src/facebook.php';

$facebook = new Facebook(array(
  'appId'  => 'YOUR_APP_ID',
  'secret' => 'YOUR_APP_SECRET',
));

// Get User ID
$user = $facebook->getUser();
if ($user) {
  try {
    // Proceed knowing you have a logged in user who's authenticated.
    $user_profile = $facebook->api('/me');
  } catch (FacebookApiException $e) {
    error_log($e);
    $user = null;
  }
}
if ($user) {
  $logoutUrl = $facebook->getLogoutUrl();
} else {
  $loginUrl = $facebook->getLoginUrl();
}

これを行うと、Facebookはユーザー情報が配置$user されている「redirect_uri」に戻るため、常に0に なります。?key=parm

Facebookによってリダイレクトされる実際のURLは次のようになります。

http://localhost/tesis/?state=6713ce83f25b296abd372ccad20a244d&code=AQA6xxwPiiQt06luKaDD84dFxIXPuhO41RlCQcnV5K2ZtVjyKvZ3A7uqqOQlEX4To_CoT8nEmUjzS2YOVsdhU5CE3I_jfK2LsmkpLsty91-EeipIIvFQLqe6VFB_OHYcj_J0-jdhXfAdYFQ2jsA6Hejnw8bF1ezWtEaZCNnqgc_mQWhovkV8XmFzLFGsqjr52bq2b0wR8Au3ZOSvJUnperaT#_=_

だから私はhtaccessにいくつかの変更を加える必要があると思います。しかし、私はどのような変更を行う必要があるのか​​わかりません

4

1 に答える 1

0

私も同じ問題を抱えてる。次のように、ログイン URL のメイン ページにリダイレクトするだけです。

$params = array('scope' => 'email','redirect_uri' => 'http://www.page.com/index.php');
$loginUrl = $facebook->getLoginUrl($params);

「Success login」ページ (非 URL フレンドリ) にリダイレクトして、過去の履歴へのリンクを含めることができる場合があります。

于 2012-11-22T05:02:16.043 に答える