身份验证重定向失败

赫舍姆·瓦塔尼

当我使用错误的凭据登录时,我得到了正确的响应。当我使用正确的凭据登录时,登录页面将重新加载302请求,但它从未重定向到统计信息页面。当我调试它时,我发现代码转到中间件文件夹中的authinticate.php,它重定向到来宾登录状态

if (Auth::guard($guard)->guest()) {
            if ($request->ajax() || $request->wantsJson()) {
                return response('Unauthorized.', 401);
            } else {
                return redirect()->guest('login');
            }
        }

看到的代码:-

Route.php

Route::get('login', 'LoginController@index');
Route::post('signin', 'LoginController@signin');
Route::get('signout', 'LoginController@signout');


Route::group(['prefix' => 'api'], function() {
    Route::resource('authenticate', 'AuthenticateController', ['only' => ['index']]);
    Route::post('authenticate', 'AuthenticateController@authenticate');
});

Route::group(['middleware' => ['web']], function () {
    Route::auth();
    Route::get('/', 'StatisticsController@index');
    Route::get('/statistics', 'StatisticsController@statistics');

});

登录控制器

    public function index() {

        return view('login');
    }

    public function signin(Request $request) {

        $errors = [];
        $email=$request['email'];
        $password= $request['password'];
        $credentials = array('email' => $email, 'password' => $password);

        if(Auth::attempt($credentials))
        {
          return redirect('/statistics');


        }
        return "bad request";

    }
     public function signout()
    {
        Auth::logout();
        return redirect('/login');    }

}

统计控制器

class StatisticsController extends Controller {
    public function __construct()
    {
                    $this->middleware('auth');

    }
    public function index() {

    return view('statistics')->with($data);
  }

public function statistics() {
        return view('statistics');

  }



}

Kernal.php注意,这里有JWT身份验证库,我仅将其用于移动应用程序的静态身份验证。

protected $middleware = [
        \Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,
    ];

    protected $middlewareGroups = [
        'web' => [
            \App\Http\Middleware\EncryptCookies::class,
            \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
            \Illuminate\Session\Middleware\StartSession::class,
            \Illuminate\View\Middleware\ShareErrorsFromSession::class,
            \App\Http\Middleware\VerifyCsrfToken::class,
        ],

        'api' => [
            'throttle:60,1',
        ],
    ];

    protected $routeMiddleware = [
        'auth' => \App\Http\Middleware\Authenticate::class,
        'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
        'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class,
        'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
        'jwt.auth' => 'Tymon\JWTAuth\Middleware\GetUserFromToken',
        'jwt.refresh' => 'Tymon\JWTAuth\Middleware\RefreshToken'
    ];

中间件/authenticate.php

<?php

namespace App\Http\Middleware;

use Closure;
use Illuminate\Support\Facades\Auth;

class Authenticate
{

    public function handle($request, Closure $next, $guard = null)
    {
        if (Auth::guard($guard)->guest()) {
            if ($request->ajax() || $request->wantsJson()) {
                return response('Unauthorized.', 401);
            } else {
                return redirect()->guest('login');
            }
        }

        return $next($request);
    }
}
麦基

检查您的缓存。我遇到了类似的问题,我损失了几个小时,因此我做了一些步骤:

  • PHP的工匠路线:清除
  • 清除浏览器缓存
  • 运行作曲家更新
  • 下载新的laravel(新项目)副本,然后将代码块缓慢合并到新项目中

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Laravel身份验证重定向失败

来自分类Dev

如何重定向Devise的注册和身份验证失败?

来自分类Dev

身份验证的URL重定向

来自分类Dev

CodeIgniter社区身份验证重定向

来自分类Dev

Laravel 身份验证无法重定向

来自分类Dev

Laravel 5重定向到身份验证/登录会导致失败

来自分类Dev

如果Passport身份验证失败,如何在重定向中保留表单数据?

来自分类Dev

LibGit2Sharp:获取失败,并显示“重定向或身份验证重放过多”

来自分类Dev

泽西岛客户端:詹金斯重定向时身份验证失败

来自分类Dev

使用Spring将重定向设置为自定义身份验证失败处理程序

来自分类Dev

Spring Security Lgoin始终重定向到身份验证失败URL

来自分类Dev

设计:在用户身份验证失败时重定向到不同的路径

来自分类Dev

根据角色重定向经过身份验证的用户

来自分类Dev

自动重定向未经身份验证的用户

来自分类Dev

用于Basic或Windows身份验证的无限重定向循环?

来自分类Dev

通过身份验证Webapp上的shiro重定向

来自分类Dev

无需重定向的Django远程身份验证

来自分类Dev

登录身份验证后进行快速重定向

来自分类Dev

Python社交身份验证重定向到相同的URL

来自分类Dev

MVC 5 Windows身份验证重定向

来自分类Dev

在Laravel中进行身份验证后如何重定向?

来自分类Dev

Python请求-重定向后的身份验证

来自分类Dev

在Laravel 5.3中通过身份验证时重定向

来自分类Dev

在Django的Createview重定向经过身份验证的用户

来自分类Dev

反应-重定向用户未通过身份验证

来自分类Dev

Next.js + Redux身份验证和重定向

来自分类Dev

React Router-基于身份验证的重定向

来自分类Dev

错误登录后的基本身份验证重定向

来自分类Dev

登录身份验证后进行快速重定向

Related 相关文章

  1. 1

    Laravel身份验证重定向失败

  2. 2

    如何重定向Devise的注册和身份验证失败?

  3. 3

    身份验证的URL重定向

  4. 4

    CodeIgniter社区身份验证重定向

  5. 5

    Laravel 身份验证无法重定向

  6. 6

    Laravel 5重定向到身份验证/登录会导致失败

  7. 7

    如果Passport身份验证失败,如何在重定向中保留表单数据?

  8. 8

    LibGit2Sharp:获取失败,并显示“重定向或身份验证重放过多”

  9. 9

    泽西岛客户端:詹金斯重定向时身份验证失败

  10. 10

    使用Spring将重定向设置为自定义身份验证失败处理程序

  11. 11

    Spring Security Lgoin始终重定向到身份验证失败URL

  12. 12

    设计:在用户身份验证失败时重定向到不同的路径

  13. 13

    根据角色重定向经过身份验证的用户

  14. 14

    自动重定向未经身份验证的用户

  15. 15

    用于Basic或Windows身份验证的无限重定向循环?

  16. 16

    通过身份验证Webapp上的shiro重定向

  17. 17

    无需重定向的Django远程身份验证

  18. 18

    登录身份验证后进行快速重定向

  19. 19

    Python社交身份验证重定向到相同的URL

  20. 20

    MVC 5 Windows身份验证重定向

  21. 21

    在Laravel中进行身份验证后如何重定向?

  22. 22

    Python请求-重定向后的身份验证

  23. 23

    在Laravel 5.3中通过身份验证时重定向

  24. 24

    在Django的Createview重定向经过身份验证的用户

  25. 25

    反应-重定向用户未通过身份验证

  26. 26

    Next.js + Redux身份验证和重定向

  27. 27

    React Router-基于身份验证的重定向

  28. 28

    错误登录后的基本身份验证重定向

  29. 29

    登录身份验证后进行快速重定向

热门标签

归档