这就是我在做的
我第一次打电话来获取令牌
$client->request('POST', '/api/login_check', [], [],
['CONTENT_TYPE' => 'application/json'],
json_encode(
[
"username" => $user->getUsername(),
"password" => 'password',
]
)
);
$response = $client->getResponse();
return json_decode($response->getContent())->token;
然后再使用一个
$client->request('GET', '/api/my_endpoint', [], [], [
'headers' => [
'Authorization' => $token
]
]);
$ token是有效的令牌(使用邮递员进行了测试),例如“ Bearer SUPERLONGSTRING”,但我收到了错误消息
JWT Token not found
谢谢
答案 0 :(得分:1)
$client->request('GET', '/api/my_endpoint', [], [], [
'HTTP_AUTHORIZATION' => "{$token}",
'CONTENT_TYPE' => 'application/ld+json',
'HTTP_ACCEPT' => 'application/ld+json'
]);
您应该使用HTTP_AUTHORIZATION
标头。尝试上面的代码。另外,您也不需要标题的嵌套数组。
此外,由于我们看不到令牌的格式,因此请记住,承载格式为:
将令牌的其余部分承载(空格)。
答案 1 :(得分:0)
$client->request('GET', '/api/my_endpoint', [], [], [
'headers' => [
'Authorization' => 'bearer '.$token
]
]);