繁体   English   中英

cURL PHP API客户端

[英]cURL PHP API client

我正在尝试访问以下API:

https://image.ibb.co/nabzZw/segmentify_api.jpg

我的代码如下,但不起作用:

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, "https://panel-api.segmentify.com/getToken");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, "{\"username\":\"XXXXX\",\"password\":\"YYYYYYY\"};");
curl_setopt($ch, CURLOPT_POST, 1);

$headers = array();
$headers[] = "Content-Type: application/json; charset=UTF-8";
$headers[] = "Accept: application/json, text/javascript, */*; q=0.01";
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

$result = curl_exec($ch);
if (curl_errno($ch)) {
    echo 'Error:' . curl_error($ch);
}
curl_close ($ch);

解决方案可能是什么?

您发送的是无效的json,

替换curl_setopt($ch, CURLOPT_POSTFIELDS, "{\\"username\\":\\"XXXXX\\",\\"password\\":\\"YYYYYYY\\"};");

curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode(array(
        'username'=>'XXXXX',
        'password'=>'YYYYYYYYY'         
)));

而且不会再发生了 (但您真正的错误是最后一个分号,json不允许使用。虽然是合法的javascript。但是,让PHP为您生成json比手工制作json字符串要安全得多,因为您刚经历过拳头。)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM