PHP POST 请求未返回任何内容
PHP POST requests not returning anything
我正在尝试从网页使用 this api,为此我正在使用 php(因为我的主机不允许任何其他操作)
我必须对此 url
提出 post 请求
https://emkc.org/api/v1/piston/execute
请求正文必须如下所示:
{
"language": "python",
"source": "print('a')"
}
我已经尝试使用此代码来实现这一点,这是我通过使用 postman 获得的,并检查它是否有效:
<?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()
returns bool(false)
其余的 return 没有。
这是怎么回事?
我发现了问题。我 运行 只是我计算机上的一个 PHP 服务器,要让它访问互联网,我必须有一个 Apache 服务器 运行 而不是简单的 PHP 一。我的 API 通话没有退出我的计算机
我正在尝试从网页使用 this api,为此我正在使用 php(因为我的主机不允许任何其他操作)
我必须对此 url
提出 post 请求https://emkc.org/api/v1/piston/execute
请求正文必须如下所示:
{
"language": "python",
"source": "print('a')"
}
我已经尝试使用此代码来实现这一点,这是我通过使用 postman 获得的,并检查它是否有效:
<?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()
returns bool(false)
其余的 return 没有。
这是怎么回事?
我发现了问题。我 运行 只是我计算机上的一个 PHP 服务器,要让它访问互联网,我必须有一个 Apache 服务器 运行 而不是简单的 PHP 一。我的 API 通话没有退出我的计算机