繁体   English   中英

使用 laravel socialite 实现 facebook 登录时出现 parse_str() 错误

[英]I am getting parse_str() error while implementing facebook login with laravel socialite

我正在使用社交名流 Laravel 实现 facebook 登录,但是在使用 facebook 成功登录后,当它返回到回调 url 时,我收到一个错误

  1. Laravel 5.6 版
  2. 社交网络 3.0 版
  3. php 版本 7.2
public function redirectToProvider()
{
    return Socialite::driver('facebook')->redirect();
}

/**
 * Obtain the user information from facebook.
 *
 * @return \Illuminate\Http\Response
 */
public function handleProviderCallback()
{
    $user = Socialite::driver('facebook')->user();

    return $user->token;
}

错误看起来像这样。

parse_str():不推荐使用不带结果参数的 parse_str() C:\\xampp\\htdocs\\ecommerce\\vendor\\laravel\\socialite\\src\\Two\\FacebookProvider.php

路由.php

// FACEBOOK ROUTES
Route::get('login/facebook', 'Auth\LoginController@redirectToProvider');
Route::get('login/facebook/callback', 'Auth\LoginController@handleProviderCallback');
// FACEBOOK ROUTES END HERE

parse_str() : https://www.php.net/manual/en/function.parse-str.php

自 PHP 7.2 起,在没有结果参数的情况下使用此函数是非常不推荐和弃用的。


查看 Github FacebookProvider类的版本历史记录,错误似乎只存在于 3.0.0 版中,但是,在3.0.4根本没有提到parse_str

要解决您的问题,您可以运行:

composer require laravel/socialite:^3.0.4

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM