我确实从一个控制器卷曲到另一个控制器。
$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()
转储到该目标控制器中,并且始终仅获得accept标头。如果我评论accept标头,它将仍然存在,但只有空。它永远不会得到授权。
此代码似乎没有丢失任何内容,那么可能是什么问题呢?
答案 0 :(得分:0)
除了检查<uses-library
android:name="org.apache.http.legacy"
android:required="false" />
是否不为空(因为您在代码中进行了检查,这可能是罪魁祸首),我认为您的授权标头应该是:
$session->get('access_token')
(请参阅https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Authorization)