栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

使用Laravel Passport Client应用程序中的访问令牌获取用户数据

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

使用Laravel Passport Client应用程序中的访问令牌获取用户数据

我一直在疯狂这个问题!对于为什么要

Unauthenticated
尝试增加诸如之类的路线时,为什么会不断吐出愚蠢的错误,这丝毫没有丝毫意义
/api/user
。经过大量搜索(MUCH搜索),我终于找到了答案。如果您从《拉拉卡斯特》中看到这个铁杆,那您就是我的英雄!

你检查了

appProvidersRouteServiceProvider.php
吗?

在中,

mapApiRoutes()
您可以设置 中间件
。检查以确保其
auth:api
。如果不是,请更改它。另外,从路由文件中删除
auth
中间件
api.php

https://laracasts.com/discuss/channels/laravel/laravel-53-passport-api-unauthenticated-in-postman-using-personal-access-tokens

编辑:

appProvidersRouteServiceProvider.php
上述内容进行更改后,请继续以下示例。

首先,我们需要检索新鲜的东西

access_token
。为此,我使用了 密码
grant_type
(更多信息:https : //laravel.com/docs/5.4/passport#password-grant-
tokens)

为了找回新鲜的东西

access_token
,我在上面创建了一条新路线
routes/web.php
并将其命名
/connect
。然后,将上面链接中的代码放入其中:

Route::get('connect', function (Request $request) {    $http = new GuzzleHttpClient;    $response = $http->post('http://example.com/oauth/token', [        'form_params' => [ 'grant_type' => 'password', 'client_id' => $request->client_id, 'client_secret' => $request->client_secret, 'username' => $request->username, 'password' => $request->password, 'scope' => ''        ],    ]);    return json_depre((string) $response->getBody(), true);});

使用Chrome
Postman,您需要:

  1. 将方法设置为
    GET
  2. 输入带有相关参数的连接URL,即http://example.com/connect?client_id=1&client_secret=W2zogh7tiBh2jfHleYuzpViv7dqynDYQ6O07DKLj&username=test@test.com&password=123456
  3. 点击 标题 标签(位于授权旁边),添加的键
    Accept
    和的值
    application/json
  4. 点击发送按钮

结果示例:

{  "token_type": "Bearer",  "expires_in": 31535999,  "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImE0MmFiYjZkNTQ5M2ZjMGQxYzVmM2E3MDFlOTNjMTRlOTQxMTBmNWQ5NmI1ODI0NTBmMmEyM2MwMzQ5OTMwODdiZGUwYTI5ZDU5N2VjYTExIn0.eyJhdWQiOiIxIiwianRpIjoiYTQyYWJiNmQ1NDkzZmMwZDFjNWYzYTcwMWU5M2MxNGU5NDExMGY1ZDk2YjU4MjQ1MGYyYTIzYzAzNDk5MzA4N2JkZTBhMjlkNTk3ZWNhMTEiLCJpYXQiOjE0OTE0Njg4ODIsIm5iZiI6MTQ5MTQ2ODg4MiwiZXhwIjoxNTIzMDA0ODgxLCJzdWIiOiI3NWNlZDUwMC0xNTQ0LTExZTctOWE4ZS1hZDVmMWFlZTM4OWUiLCJzY29wZXMiOltdfQ.dV3DKDM7IN-oGnZ_Rw10VnYkh9ySlz5i859yO0roZLAYwgmsmEEZK_vpttudUoKmYenqibZQXg6HG4KHRd-cgas_2DpO-7UCkXQYNTriUUAQ4XM6To86EOaf2BW1a07kdVGXTdo_ETQc7heUG0NWQ8-Hrr2NHkSyDULupDs8gDg_fg6xSVsFUEDZB32UIGwquAHT1Y21ZpTdQar0Rag9qOLeZYTR05ro0v9_rQbSoDgJiZE3KT9GbqwU_BegWRmAwY6LmxG4raZpSMgqYEMo3D9D0lJiomOLK4pSjqmi0EVti04zZ6Vg4GHE6S1TgC6IlakV2bMItXTWuZT6T0jEba-3ctaC4K2T8F4P8J6t-99mKY-_zSwgfGm1FErK09qixJlZ4zFsCCT7MgNQVoyu7GkJdTJVlpL1QXLc1QhfrtW11a4gg4Nlja_VyRdB9fZHomgMLpvm_HvSlqEvpeWb8wGkCts9w7ivSNLim-LuFgswGNhTZZqLEbuwB6sJV-l1V0MJCq7_h0yTmLlBdoUkxCaDJJvkUSLk0MUaalAAzY1OCxm-tJcKn31m4yOwf25ZDWf8tWuOTKarEbFyxjB0elkxXQXGe7J7TJAg0tuIEQ8YTL3ExJQ6I7zwtCL83bPOWYRGlJrsX6Lsf0qB-xMVD2DzA3JKDKvZTp5x92kP821",  "refresh_token": "ArOWW0glHjflLpL4fKOsrNUXT5v91u+CjwcE8LBvH7GJsaM0gWaFe8GH9zXjh8SHew+cg7v1IMiIPLYSVdf7h8oOeV7wgwjChI9YM0Kt6iE4wOXJuy0VwPSCj+danHDuWC3nJWYLrPydTE3h/jgFNjWEPfgXGLfiRWjWQMozddz5EWd4pvUI7J64Lw6cMCg/BslZLHtfN7IWoC1RQGp5K0cGO0QmZfsGMSzsoSUNFjv16BXiKSqlNvs5aGhxErFY4wEOKqBifXUkb3SwnK/iHKg3irmqj4fOf/aKNyCdd/PJCHrRPocrW83oM1sjq7eDufEIlgxmy7uRset8GLAWjx/n6rzkxz2QM0/9Lyc/XN9OL00XBYjA47a1wL55qUUUYWevaFwxWX8LG2UjBf9Vv2lfvLcBBkbgqpalePMDh6wb8IDyJek4BbvZtJ1VZ/l+A9XXY9rQt/hIDdoOAtib8CGr9/CERFIrByZa3TEJBCLAa2FvJSIhHVnKvnuvZX3e9qhTkgHqowJrWg2C3VyPDQYAdIhdpTEvs0pcGSAZWhwXfu9xKQOeyRTEScbLKQmuW+sGbwU+qfdLgh/BR5kW4TMer4TIzWKSuHsqmibgiUwaQkwTrtjH2Xz9Z9XmAbVzJ8pqbEZPe7t5whXDoRSnAwWymdxk2E7SiSsVUA3kX39="}

突出显示该

access_token
字符串并将其复制到文本编辑器。

然后,您需要在中创建一条新路线

routes/api.php
。以下路由将仅输出当前API用户的信息:

Route::group(['prefix' => 'user'], function() {    Route::get('/', function() {        return response()->json(request()->user());    });});

完成上述操作后,对Postman进行以下更改:

  1. 将方法设置为
    GET
  2. 更改URL以指向API路由,即http://example.com/api/user
  3. 再次单击 标题 选项卡,并添加的新键
    Authorization
    和的值
    Bearer access_token_here
    (替换
    access_token_here
    为先前复制的访问令牌)
  4. 点击发送按钮

输出示例:

{  "id": "75ced500-1544-11e7-9a8e-ad5f1aee389e",  "name": "test test",  "email": "test@test.com",  "created_at": "2017-03-30 23:29:03",  "updated_at": "2017-03-30 23:29:03"}


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/418350.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号