也许这个问题得到回答之前,但我测试的一切是我一个网络上找到,并不能使它工作... 我必须成立这种用PHP请求。PHP卷曲和API
- 卷曲X POST “https://page.com/login/CODE” \
- H “接受:应用/ JSON,文本/ *; Q = 0.2” \
- H “AcceptCharset:UTF8” \
- H“AcceptEncoding: gzip的,放气” \
- d '{ “appCode”: “CODE”}' \
- --cacert cacert.pem \
- --compressed
这里是我的PHP代码:
$data = array('appCode'=>'CODE');
$data_json = json_encode($data);
$curl = curl_init();
curl_setopt($curl, CURLOPT_CAINFO, "cacert.pem");
curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-Type: application/json'));
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($curl, CURLOPT_URL, URL_REQUEST);
curl_setopt($curl, CURLOPT_HEADER, FALSE);
curl_setopt($curl,CURLOPT_ENCODING , "");
//curl_setopt($ch, CURLOPT_POST, 1);
//curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($curl, CURLOPT_POSTFIELDS, $data_json);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
如果我得到一个正确的答案,从API它应该是一个JSON阵列,ALSE按摩登录错误。
还是不知道这是什么文字/ *; Q = 0.2" ,有什么建议我在做什么错
如果有人将这里需要帮助我的代码:
$data = array('appCode'=>'CODE');
$data_json = json_encode($data);
$curl = curl_init();
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($curl, CURLOPT_CAINFO, "cacert.pem");
curl_setopt_array($curl, array(
CURLOPT_URL => "https://login.com/CODE",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => $data_json,
CURLOPT_HTTPHEADER => array('cache-control: no-cache'),
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
最终我发现什么是错的。
我得到了所有的手册在PDF文件。 我从PDF复制标题信息,并将其粘贴到 Sublime 当我复制并这样 的Content-Type糊剂头部信息:应用/ JSON
在升华将其用破折号正常显示( - ),但是当我与像记事本等软件打开++它显示了不带短跑。 的ContentType:应用程序/ JSON
这是问题,为什么我的代码没有工作:)
text/*; q = 0.2“被称为媒体类型品质因子,用于指定文件的优先级,在这种情况下,纯文本在0到1的范围内具有0.2的优先级 –
它可能是其不工作的原因? – ekavet
没有,你是不是设置在卷曲 –