我正在编写一个小型代理服务器供我个人在 PHP 中使用。转发网页的请求,我还必须转发 $_POST 数据,但一般我不知道 POST 中的数据类型。
如果 POST 包含一些表单数据,这很简单:
private function preparePostData() {
if (count($_POST) > 0) {
curl_setopt($this->ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($this->ch, CURLOPT_POST,true);
$post = http_build_query($_POST);
curl_setopt($this->ch, CURLOPT_POSTFIELDS, $post);
}
}
但如果 $_POST 包含其他类型的数据(JSON、文件等),这将不起作用。所以我想知道是否存在一种通用方法来使用 cURL 转发任何类型的 $_POST 数据。