如何在控制器中获取 api_token?

Posted

技术标签:

【中文标题】如何在控制器中获取 api_token?【英文标题】:How can I get the api_token in the controller? 【发布时间】:2021-03-25 10:48:31 【问题描述】:

我有这个 Vuejs 代码:

axios.get('/api/electronic_collection?page='+this.currentPage+'&api_token='+App.apiToken)
                .then(response => 
                    this.posts = response.data.data.data;
                    this.total = response.data.data.last_page;
                    this.currentPage = response.data.data.current_page;
                    this.rowsQuantity = response.data.data.total;
                );

您如何看到我正在 seding api_token,因为它连接到 API Restful,但我想做的是我需要在控制器中获取此 api_token。

我的控制器是这样的:

public function index(Request $request)

     but I'd like to get the api_token here, how can I do that I mean $_GET['api_token'] is it like this?

【问题讨论】:

这能回答你的问题吗? Access query string values from Laravel 为什么你认为无论如何都需要获取查询字符串值?您应该只使用Auth::user() 来获取经过身份验证的用户。 【参考方案1】:

查询字符串是输入源。您可以向请求请求此输入:

$request->input('api_token')

Laravel 8.x Docs - Requests - Retrieving Input - Retrieving and Input valueinput

【讨论】:

【参考方案2】:

你可以从 $request 对象中得到它

public function index(Request $request)

     $apiToken = $request->api_token;

    //OR

    $apiToken = $request->query('api_token');

【讨论】:

以上是关于如何在控制器中获取 api_token?的主要内容,如果未能解决你的问题,请参考以下文章

postman 设置api_token,测试数据等操作

Laravel - 在标题中发送 api_token

如何更改令牌保护中的 api_token 列

如何将 api_token 参数更改为一些自定义参数,如 api_key 或 key

Clover API 不允许使用商家 api_token 进行连接

Laravel api 授权与 api_token