Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 我可以和如何使用laravel passport保护我的路由_Reactjs_Laravel_React Router_Laravel Passport - Fatal编程技术网

Reactjs 我可以和如何使用laravel passport保护我的路由

Reactjs 我可以和如何使用laravel passport保护我的路由,reactjs,laravel,react-router,laravel-passport,Reactjs,Laravel,React Router,Laravel Passport,我找不到react和laravel认证的文档,但我在论坛上看到人们在使用passport,所以我也使用了它。目前我有access_令牌,我可以用passport的中间件保护laravel路由,但如何保护react路由器路由 目前我正在考虑使用 来自“universal cookie”的cookie将令牌作为cookie传递给管理仪表板组件,并从中运行axios请求以检查令牌是否有效。如果允许访问,我可以显示仪表板,以其他方式显示“拒绝访问”元素。但这不是路由保护,我想知道如何正确地执行 var

我找不到react和laravel认证的文档,但我在论坛上看到人们在使用passport,所以我也使用了它。目前我有access_令牌,我可以用passport的中间件保护laravel路由,但如何保护react路由器路由

目前我正在考虑使用 来自“universal cookie”的cookie将令牌作为cookie传递给管理仪表板组件,并从中运行axios请求以检查令牌是否有效。如果允许访问,我可以显示仪表板,以其他方式显示“拒绝访问”元素。但这不是路由保护,我想知道如何正确地执行

 var bodyFormData = new FormData;
        bodyFormData.append('name', this.state.name);
        bodyFormData.append('password', this.state.password);
        axios({
            method: 'post',
            url: '/api/login',
            data: bodyFormData,
            config: { headers: {'Content-Type': 'multipart/form-data' }}
        })
            .then(function (response) {
                var cookies = new Cookies();
                cookies.set('access_token', response.data.access_token, { path: '/' });
            })
            .catch(function (response) {
                alert(response)
            });


通常,完成这项工作的方法是将标准的
路由
组件包装成一个自定义组件,并在其中传递身份验证逻辑


请参阅本文以获取一个很好的示例:

这看起来很有希望,如果我能设法将它与passport的auth结合起来,我会将其标记为已接受。目前,我正在考虑在成功身份验证后将passport的令牌存储到cookie中,然后重定向到PrivateOuter并使用令牌发出axios get请求以检查用户,然后对应于axios响应,如果失败,我将显示管理仪表板或重定向到登录页面。