Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.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
Php 中间件身份验证将api路由重定向到/home_Php_Laravel_Api_Routing - Fatal编程技术网

Php 中间件身份验证将api路由重定向到/home

Php 中间件身份验证将api路由重定向到/home,php,laravel,api,routing,Php,Laravel,Api,Routing,我创建了api路由: 文件routes/api.php: Route::middleware('auth:api')->get('/user', function (Request $request) { return $request->user(); }); Route::middleware('auth:api')->group(function() { Route::get('/tasks','TaskController@index'); });

我创建了api路由:

文件
routes/api.php:

Route::middleware('auth:api')->get('/user', 
function (Request $request) {
    return $request->user();
});

Route::middleware('auth:api')->group(function() 
{
    Route::get('/tasks','TaskController@index');
});
之后,我转到
/api/tasks
,中间件重定向到/home,我应该如何使用/api/tasks而不重定向到/home(我已登录),我还可以使用此中间件


Laravel 5.5

当路由放置在
api.php
中时,如果您通过会话登录到网站,它将不起作用。实际上,它将寻找您现在不发送的API令牌

如果您通过网站上的会话登录,只需点击API即可 端点不在浏览器中,将无法工作。它将不会检查 会话以查看您是否已登录,它将查找API 请求的令牌。由于您没有指定令牌,因此 引发AuthenticationException

然后,异常处理程序接受此异常,检查您的请求 并看到它没有在头文件中指定它需要JSON。 如果它需要JSON,您会看到一个JSON响应说 未经认证。因为它不需要JSON,所以会重定向到 登录页面,由于您是通过 一场令人困惑,但我想这就是原因

如果你想玩你的游戏,你需要使用像邮递员这样的工具 API端点,以便您可以在请求中指定所需的头


有关更多详细信息,请访问填写
laravel/passport


文章:

没有,仍然重定向。我使用头
授权:基本我的\u令牌
。尝试使用auth中间件,而不是
auth:api
!仍然重定向。邮递员将我的令牌
x5kxngtgsqyzyqrx59kun96tchatoifkkgqi1n18lffv8geyurzmmhymxku
转换为
YWFnejo=