Curl 正在工作,但是 php CURL 出错

我们想从 linux 终端与我们使用 curl 的第 3 方 API 进行通信。curl 是 - curl -X POST \ \ -H 'Authorization: Bearer' \ -H 'Content-Type: application/json'


当我们触发这个 curl 时,我们会得到预期的响应。


但是,当我们尝试从 PHP 脚本执行此操作时,我们会收到错误消息 - HTTP ERROR 500


PHP代码片段是 -


<?php


$ch = curl_init();


curl_setopt($ch, CURLOPT_URL, <URL>);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

curl_setopt($ch, CURLOPT_POST, 1);

//curl_setopt($ch, CURLOPT_POSTFIELDS,'');

curl_setopt($ch, CURLOPT_VERBOSE,true);


$headers = array();

$headers[] = 'Authorization: Bearer <token>';

$headers[] = 'Content-Type: application/json';

curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);


$result = curl_exec($ch);

echo $result;

if (curl_errno($ch)) {

    echo 'Error:' . curl_error($ch);

}

curl_close($ch);


?>

当详细模式打开时,收到的响应是 -


*   Trying <IP>...

* Connected to <URL> (<IP>) port 443 (#0)

* ALPN, offering http/1.1

* Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH

* successfully set certificate verify locations:

*   CAfile: /etc/ssl/certs/ca-certificates.crt

  CApath: /etc/ssl/certs

* SSL connection using TLSv1.2 / ECDHE-RSA-AES128-GCM-SHA256

* ALPN, server did not agree to a protocol

* Server certificate:

*    subject: OU=Domain Control Validated; CN=* <domain>

*    start date: Dec 17 10:41:01 2017 GMT

*    expire date: Dec 17 10:41:01 2020 GMT

*    subjectAltName: <URL> matched

*    issuer: C=US; ST=Arizona; L=Scottsdale; O=GoDaddy.com, Inc.; OU=http://certs.godaddy.com/repository/; CN=Go Daddy Secure Certificate Authority - G2

*    SSL certificate verify ok.

> POST /app/auth HTTP/1.1

Host: <URL>

Accept: */*

Authorization: Bearer <Token>

Content-Type: application/json

Expect: 100-continue


请注意,在此处发布问题时,我已经替换了实际的 URL、IP 和令牌。


为了确保 PHP curl 没有问题,我们使用 curl-to-PHP 代码生成器实用程序来生成代码 ( http://incarnate.github.io/curl-to-php/ )。


有人可以帮助我,让我知道可能出了什么问题。


皈依舞
浏览 204回答 1
1回答

缥缈止盈

为了避免«500 error»(例如),请务必:set proper "Referer: " header if needed, withcurl_setopt(CURLOPT_REFERER, 'ref page');set proper "User-Agent: " header, withcurl_setopt(CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)')
打开App,查看更多内容
随时随地看视频慕课网APP