Symfony phpCurl授权标题

问题描述 投票:0回答:1

我从一个控制器到另一个控制器卷曲。

$ch = curl_init($url . '?' . http_build_query($get));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
$headers[] = 'Accept: application/json';

if ($session->get('access_token'))
    $headers[] = 'Authorization:' . $session->get('access_token');

curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$response = curl_exec($ch);

我将$request->headers->all()转储到该目标控制器中,并始终只获取接受标头。如果我评论接受标题,它仍然会在那里但只是空的。它永远不会获得授权。

这段代码似乎没有遗漏任何东西,所以可能出错了?

symfony curl authorization
1个回答
0
投票

除了检查$session->get('access_token')是否为空(因为您在代码中检查它,这可能是罪魁祸首),我认为您的Authorization标头应该是:

$headers[] = 'Authorization: Basic ' . $session->get('access_token');

(见https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Authorization

© www.soinside.com 2019 - 2024. All rights reserved.