PHP 获取原始 HTTP 请求(php://input 不起作用)


PHP Get the Raw HTTP Request (php://input not working)

我正在尝试访问发送到PHP服务器的原始HTTP请求。

但是,所有输入/输出流都不起作用。

我不能使用php://input,也不想"插值"来自数组的请求,例如$_COOKIES, $_POST等。 $_POST, $_GET和其他阵列工作正常。我在 Windows 7 上使用 WAMPServer。

任何人都可以帮助我解决输入/输出流的问题或找到另一种获取原始请求数据的方法吗?

来自 PHP 文档:

php://input 是一个只读流,允许您从请求正文读取原始数据

这意味着您只能读取正文数据,而不能读取标头或原始请求。如果你在 Apache 下运行,你可以使用 apache_request_headers 函数来获取所有标头。要获取"请求"行(请求的第一行(,我想您需要连接可以从 $_SERVER 变量获得的字符串。