【问题标题】:PHP Curl does not send POST request to serverPHP Curl 不向服务器发送 POST 请求
【发布时间】:2016-03-08 00:13:35
【问题描述】:

我有这个代码:

<?php
$data = array('name' => 'Ross', 'php_master' => true);

$url = 'http://dsaasd.adsds.nl:8081/cops.nsf/orders?openagent';


$html_brand = "www.google.com";
$ch = curl_init();

$options = array(
    CURLOPT_URL            => $url,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HEADER         => true,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_ENCODING       => "",
    CURLOPT_AUTOREFERER    => true,
    CURLOPT_CONNECTTIMEOUT => 120,
    CURLOPT_TIMEOUT        => 120,
    CURLOPT_MAXREDIRS      => 10,
     CURLOPT_VERBOSE => true,
);
curl_setopt_array( $ch, $options );
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);

if ( $httpCode != 200 ){
    echo "Return code is {$httpCode} \n"
        .curl_error($ch);
} else {
    echo "<pre>".htmlspecialchars($response)."</pre>";
}

curl_close($ch);

 ?>

问题是,如果我将 curl 帖子发送到: $url = 'http://dsaasd.adsds.nl:8081/cops.nsf/orders?openagent';

然后它不起作用。

但是,如果我将 curl 帖子发送到同一服务但在不同的服务器上,那么它可以工作,这是另一台服务器 $url = 'http://dsaasd.adsds.nl:80/cops.nsf/orders?openagent';

我还通过普通形式将数据发布到: $url = 'http://dsaasd.adsds.nl:8081/cops.nsf/orders?openagent'; 然后它工作了,我在服务器上接收数据。

但是通过这个 curl 帖子,我不断得到: 返回码为 0 连接 11.43.45.123 失败:网络不可达

有人知道吗?

【问题讨论】:

标签: php curl


【解决方案1】:

我认为您需要将CURLOPT_POST 添加到$options 数组中。文档here.

【讨论】:

  • Nope 不会改变任何我认为与端口 8081 相关的东西
  • 也试试设置CURLOPT_PORT
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-11-06
  • 1970-01-01
  • 2012-12-12
  • 2012-08-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多