【问题标题】:PHP POST requests not returning anythingPHP POST 请求不返回任何内容
【发布时间】:2021-07-07 03:48:15
【问题描述】:

我正在尝试使用来自网页的this api,为此我正在使用 php(因为我的主机不允许其他任何内容)

我必须向这个网址发出一个帖子请求

https://emkc.org/api/v1/piston/execute

请求正文必须如下所示:

{
  "language": "python",
  "source": "print('a')"
}

我已经尝试过这段代码来实现这一点,这是我通过使用邮递员得到的,并检查它是否有效:

<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://emkc.org/api/v1/piston/execute',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{
    "language": "python",
    "source": "print(\'a\')"
  }',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'Cookie: engineerman.sid=s%3AskNtfiOWjopn-CqdMwPS8SaWagDp5WYc.vJITp6lG8V9dteGzs92Xldaw88sfHfLO1sF%2FbfdLvbI'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
var_dump($response);
print_r($response);

?>

但是当我从本地服务器运行它时,它不起作用。 var_dump() 返回 bool(false),其余的什么都不返回。

这是怎么回事?

【问题讨论】:

  • curl_error()询问信息...

标签: php api post request


【解决方案1】:

我发现了问题。我在我的计算机上只运行了一个 PHP 服务器,为了让它能够访问互联网,我必须运行一个 Apache 服务器而不是一个简单的 PHP 服务器。我的 API 调用没有退出我的计算机

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-03
    • 2014-01-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多