页面无法正确重定向laravel 5.8

问题描述 投票:0回答:1

我的登录功能不起作用(本机用户登录)每当我单击登录时,它都会返回一个错误,即服务器正在以永远无法完成的方式重定向对此地址的请求。

页面无法正确重定向

错误图像-https://i.stack.imgur.com/4OT1U.png

我的登录控制器

namespace App\Http\Controllers\auth;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use Auth;
use Socialite;
use App\SocialRevolutionary;
use Validator;
use DB;
class SocialRevolutionaryLoginController extends Controller
    {
   protected $redirectTo = '/SocialRevolutionaries/Dashboard';

 public function __construct()
          {
      $this->middleware('guest:social_revolutionary');
          }
  public function showLoginForm()
      {
    return view('auth.socialrevolutionarieslogin');
      }
  public function login(Request $request)
    {
  $this->validate($request, [
    'email' =>  'required|email',
    'password' => 'required|min:6'
   ]);

  if(Auth::guard('social_revolutionary')->attempt(['email' => $request->email, 'password' => $request->password], $request->remember)) {
    return redirect()->intended(route('SocialRevolutionaries.Dashboard'));
  }
    return redirect()->back()->withInput($request->only('email', 'remember'));
  }

 public function redirectToProvider()
       {
    return Socialite::driver('google')->redirect();
       }

/**
 * Obtain the user information from GitHub.
 *
 * @return \Illuminate\Http\Response
 */
public function handleProviderCallback()
{   
    try {
        $user = Socialite::driver('google')->stateless()->user();
    }  catch (Exception $e)  {
        return redirect()->route('SocialRevolutionaries/login/google');
       }

       $authUser = $this->createUser($user);

       Auth::login($authUser, true);
       return redirect()->route('SocialRevolutionaries.Dashboard');
    }


    public function createUser($user)
    {
        $authUser = SocialRevolutionary::where('google_id', $user->id)->first();
        if ($authUser){
            return $authUser;
        }
        return SocialRevolutionary::create([
        'name' => $user->name,
        'email' => $user->email,
        'remember_token' => $user->token,
        'google_id' => $user->id,
          ]);

    }   


    // Facebook Login Starts


    public function redirectToProviderf()
{
    return Socialite::driver('facebook')->redirect();
}

/**
 * Obtain the user information from GitHub.
 *
 * @return \Illuminate\Http\Response
 */
public function handleProviderCallbackf()
{   
    try {
        $user = Socialite::driver('facebook')->stateless()->user();
    }  catch (Exception $e)  {
        return redirect()->route('SocialRevolutionaries/login/facebook');
       }

       $authUser = $this->createUser1($user);

       Auth::login($authUser, true);
       return redirect()->route('SocialRevolutionaries.Dashboard');
    }
    // return $user->name;

   public function createUser1($user)
    {
        $authUser = SocialRevolutionary::where('facebook_id', $user->id)->first();
        if ($authUser){
            return $authUser;
        }
        return SocialRevolutionary::create([
        'name' => $user->name,
        'email' => $user->email,
        'remember_token' => $user->token,
        'facebook_id' => $user->id,
          ]);
            }
        }

我的web.php

Route::prefix('SocialRevolutionaries')->group(function() {
Route::get('/login', 'auth\SocialRevolutionaryLoginController@showLoginForm')->name('socialrevolutionaries.login');
Route::post('/login', 'auth\SocialRevolutionaryLoginController@login')->name('socialrevolutionaries.login.submit');
Route::get('/', 'SocialRevolutionaryController@index')->name('SocialRevolutionaries.Dashboard');
});

我的RedirectedIfAuthenticated.php

namespace App\Http\Middleware;
use Closure;
use Illuminate\Support\Facades\Auth;
    class RedirectIfAuthenticated
     {
           /**
      * Handle an incoming request.
      *
      * @param  \Illuminate\Http\Request  $request
       * @param  \Closure  $next
     * @param  string|null  $guard
     * @return mixed
    */
    public function handle($request, Closure $next, $guard = null)
      {

    switch ($guard) {
        case 'admin':
            if (Auth::guard($guard)->check()) {
                return redirect()->route('admin.Dashboard');
            }
            break;

            case 'social_revolutionary':
            if (Auth::guard($guard)->check()) {
                return redirect()->route('SocialRevolutionaries.Dashboard');
            }
            break;

             case 'social_member':
            if (Auth::guard($guard)->check()) {
                return redirect()->route('SocialMember.Dashboard');
            }
            break;

        default:
           if (Auth::guard($guard)->check()) {
        return redirect('/home');
            }
            break;
    }    
    return $next($request);
     }
   }

Model SocialRevolutionary.php

 namespace App;

use Illuminate\Notifications\Notifiable;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Auth;
use Socialite;

class SocialRevolutionary extends Authenticatable
 {
 use Notifiable;

 protected $guard = 'social_revolutionary';

/**
 * The attributes that are mass assignable.
 *
 * @var array
 */
protected $fillable = [
    'name', 'email', 'password', 'google_id', 'facebook_id'
];

/**
 * The attributes that should be hidden for arrays.
 *
 * @var array
 */
protected $hidden = [
    'password', 'remember_token',
  ];
 }
php laravel laravel-5.8
1个回答
0
投票
© www.soinside.com 2019 - 2024. All rights reserved.