2

我正在尝试使用 Laravel 和 The League OAuth2 客户端在 Facebook 上进行社交登录,但出现此错误:

Required option not passed: access_token Array ( [{"error":{"message":"Error_validating_client_secret_","type":"OAuthException","code":1}}] => )

我已按照包 github 页面中的说明进行操作,但无法使其正常工作。

我的控制器操作代码:

 $facebook = $this->socialRepository->facebookLogin();
    $code = \Input::get("code");

    if(!isset($code)) {
        $authURL = $facebook->getAuthorizationUrl();
        return \Redirect::away($authURL);
    } else {
        $token = $facebook->getAccessToken('authorization_code', ['code' => $code]);
        try {
            $userDetails = $facebook->getUserDetails($token);
            dd($userDetails);
        } catch (\Exception $e) {}
    }

和存储库代码:

public function facebookLogin()
{
    return new Facebook(
        [
            'clientId'      => $this->config->get("social.facebook.clientID"),
            'clientSecret'  => $this->config->get("social.facebook.clientSercret"),
            'redirectUri'   => $this->config->get("social.facebook.redirectUri"),
            'scopes'        => $this->config->get("social.facebook.scopes"),
        ]
    );
}
4

1 回答 1

1

当重定向 URL、应用程序 ID 或密码不正确时,通常会发生这种情况。例如,

'clientSecret'  => $this->config->get("social.facebook.clientSercret"),

你的意思是social.facebook.clientSercret不是social.facebook.clientSecret(没有额外的r

于 2015-01-28T20:22:06.727 回答