gpt4 book ai didi

php - cakephp3-无法在 Controller 内获取授权 header

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:34:35 24 4
gpt4 key购买 nike

我正在使用 CakePHP 3 框架开发 API。现在我从 POSTMAN 客户端发送 GET 请求。用户将在 header 中传递 API key 。 enter image description here

我想在我的 Controller 函数中获取这个 header 。

这是我的 Controller 的样子

namespace Api\Controller;
use Cake\Auth\DefaultPasswordHasher;
use Api\Controller\AppController;
use Cake\Cache\Cache;
use Cake\Http\ServerRequest;

class ApiController extends AppController
{
public function initialize()
{
parent::initialize();
$this->loadComponent('RequestHandler');
}

public function myinfo()
{
if($this->request->is('get')) {
$key = $this->request->getHeaderLine('Authorization');
$this->set('key', $key);
}
$this->set('_serialize', ['key']);
}
}

我得到的错误是:HeaderLine 不是函数

我还尝试了更多选项:

$acceptHeader = $this->request->getHeader('Authorization');

但这也引发了类似的错误。 header 不是函数。

引用:Link

CakePHP 版本:3.3.5

最佳答案

正如@ndm 在 OP 评论中所说,链接文档中的最后一个示例应该可以解决您的问题。您使用的是 3.4 之前的版本,因此您必须使用:

// Prior to 3.4.0
$key = $this->request->header('Authorization');

关于php - cakephp3-无法在 Controller 内获取授权 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43205780/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com