首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >令牌Passport用户

令牌Passport用户
EN

Stack Overflow用户
提问于 2018-12-20 00:22:46
回答 1查看 35关注 0票数 0

我刚开始构建API,我正在使用Laravel和一些包,比如Passport。

在这个项目中,我正在创建一个API来与移动应用程序通信,并执行一些任务,如创建用户和添加一些与用户相关的信息。

我已经开始了解它是如何处理令牌的,并且我已经完成了几乎所有的工作。我唯一的问题是,例如,在我创建一个注册用户来接收令牌之前,我在移动应用程序中显示了其他信息,如新闻,以及一些不需要登录或注册的列表信息。

在我的API中,我已经准备好了这些路由,但是我不能访问这些信息,因为我需要一个令牌。

iI如何处理这种情况?当我需要访问信息时,我不能在哪里提供它?

EN

回答 1

Stack Overflow用户

发布于 2018-12-20 01:06:57

使用控制器从数据库中检索所需的数据,然后返回包含数据的响应,并为用户创建令牌:

代码语言:javascript
复制
...
$status = 200;
$response = [
   'data'  => Your data (user info, listings, news...),
   'token' => Auth::user()->createToken("YourTokenName")->accessToken,
];

return response()->json($response, $status);

然后,您可以在localStorage中存储该令牌

代码语言:javascript
复制
axios.post('your-api-route')
.then((response) => {
   localStorage.setItem(`${"YourTokenName"}.jwt`, response.token);
   ...
})

最后将该令牌附加到需要authentication应用编程接口路由

代码语言:javascript
复制
axios.defaults.headers.common['Authorization'] = 'Bearer ' + localStorage.getItem(`${YourTokenName}.jwt`);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53855294

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档