laravel sainttum 路线[登录]未定义

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

我正在尝试在我的 laravel vue 应用程序中获取当前用户。每当我尝试获取它时,我都会收到此错误:

Symfony\Component\Routing\Exception\RouteNotFoundException: Route [login] not defined. in file C:\Users\Moeme\Documents\School\HsLeiden\Keuzevakken\IKFRAM\sla ticketsystem\ticketsystem\vendor\laravel\framework\src\Illuminate\Routing\UrlGenerator.php on line 444

这是我通过邮递员发送的内容:

this is what I send in postman

这就是我的

routes\api.php

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

我真的不知道为什么它不起作用

感谢您的帮助

php laravel laravel-sanctum
4个回答
37
投票

在标题处添加新配置

"Accept"=>"application/json"

Laravel 会检查“Accept”的配置,如果“Accept”没有设置默认值,它将返回网页或 html


9
投票

仅向邮递员发出请求时,我遇到了相同的错误,请将其添加到标题中

:接受

:应用程序/jsonenter image description here


1
投票
  1. 您的网址不正确。删除查询参数前的“/”。

    https://127.0.0.1:8000/api/user?param1=value¶m2=value - 这适用于带有查询参数“param1”和“param2”的路由“/api/user”

  2. 您正在尝试在查询参数中传递标头。将“接受”和“授权”移至 Postman 中请求的“标头”选项卡。


0
投票

您遇到的错误,

Symfony\Component\Routing\Exception\RouteNotFoundException: Route [login]
未定义,通常发生在身份验证流程未正确设置或缺少登录路由时。

由于您是通过 Postman 进行测试,因此您需要确保您的请求经过正确身份验证。向 Laravel 后端发出请求时,请按照以下步骤解决问题:

  1. 设置请求标头: 在 Postman 中,您需要添加以下标头以确保请求被识别为 API 调用并经过正确身份验证:

    '标题' => [ '接受' => '应用程序/json', '授权' => '承载' 。 $accessToken, ]

  2. 使用不记名令牌: 在 Postman 中,转到“授权”选项卡,然后从“类型”下拉列表中选择“承载令牌”。然后,在令牌字段中添加您的访问令牌。

示例: 标题选项卡:enter image description here

授权标头:enter image description here

添加标头和承载令牌后,您的请求应该经过正确的身份验证,并且您不应再遇到“路由 [登录] 未定义”错误。

这对我类似的情况很有用,我希望它也能帮助您解决问题!

© www.soinside.com 2019 - 2024. All rights reserved.