使用授权字符串将CLI请求转换为PHP cURL API请求

时间:2017-11-09 12:04:44

标签: php curl

我一直在试图让这段代码正常工作。我面临的问题是,可能有任何地方出现问题,我对cURL和API请求的经验不足以了解我是否只是在某处做了一些简单而愚蠢的事情。下面的代码应该是获取JSON响应。我目前得到的是" false"。 API开发人员不断给我一个CLI示例,我不知道如何翻译"我可以在PHP中使用它。

我必须在我的示例中隐藏域名,服务名称和身份验证详细信息。

给我的字符串:

'https://[domain]/agw/latest/services/[service]-api/latest/api/v2/[service]-actual-prizes -vk -H "Proxy-Authorization: Basic [authstr]"'

([authstr]是用户名和密码,用冒号和BASE64编码分隔 - API开发者已经确认我的授权字符串是正确的)

我一直在尝试:

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://[domain]/agw/latest/services/lottery-api/latest/api/v2/sportka-actual-prizes');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, FALSE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  "Proxy-Authorization: Basic '.$authstr.'"
  ,"Content-type: application/json"
));
$response   =   curl_exec($ch);
curl_close($ch);
var_dump($response);

如果我理解正确(并且我不确定我这样做),那么我就传递了URL(没有标记),说我不想在回复中使用标题(我已经试过TRUE而没有任何成功),然后用包含授权的请求传递标题。

我已经尝试了带有stream_context_create标头的file_get_contents,但也失败了。

我在cURL代码中缺少标题选项或标记或其他内容吗?

0 个答案:

没有答案