php - 在 Laravel 中正确访问 API
问题描述
我有一个使用 Laravel 6 的简单项目,其中我从 Blade 视图中 AJAX 加载数据。所以我可以:
$.ajax({url: "api/users", success: (result) => { ...
这个例子涉及两条路线:
Route::middleware('auth:api')->get('api/users', 'Api\ApiUsersController@index');
Route::middleware('auth:web')->get('users', 'UsersController@users');
我想了解如何从users
页面正确获取 API 数据。
- 如果我手动这样做,
$.ajax({url: "api/users?api_token={{Auth::user()->api_token}}"
那么这个令牌很容易被盗,并且可以绕过身份验证。 - 如果我在 中更改我的 API 中间件
auth:web
,那么没有人可以使用真正的应用程序 API 令牌访问 API。
我想最好的方法是将默认的用户 API 令牌保存在会话中,如果它存在于 api 保护中,则获取它。
进行的正确方法是什么?
解决方案
推荐阅读
- python - 在 discord.py 中删除图像后,如何让机器人复制图像的 url 链接
- c - 尝试使用 C 和矩阵显示 X,但有些不对劲
- r - 如何将一个列表中的 data.tables 合并为一个 data.table/data.frame
- python - Python 在与 ElementTree 的同一循环中获取 XML 的父值和子值
- c# - c# winform 如何替换代码 If-else not working
- javascript - 如何避免节点/快递中的全局变量
- datetime - 在 hive 中将 090216(字符串)转换为 16-FEB-09(日期)
- reactjs - 在 Apollo / GraphQL 中发生突变后如何更新缓存?
- pine-script - 有没有办法绘制超过 53 个条的标签?
- python - train_in_memory 的输入函数要求