将完整请求存储在PHP变量中
我正在用PHP创建一个框架,需要通过浏览器完成完整的原始请求。所以我希望变量中有这样的东西:将完整请求存储在PHP变量中,php,http,Php,Http,我正在用PHP创建一个框架,需要通过浏览器完成完整的原始请求。所以我希望变量中有这样的东西: POST /lolzorz/xD HTTP/1.1\r\n Host: localhost\r\n User-Agent: UserAgentHere/1.0.00\r\n Content-Type: application/xml; charset=utf-8\r\n Content-Length: 0\r\n \r\n <?xml version="1.0" encoding="UTF-8"?
POST /lolzorz/xD HTTP/1.1\r\n
Host: localhost\r\n
User-Agent: UserAgentHere/1.0.00\r\n
Content-Type: application/xml; charset=utf-8\r\n
Content-Length: 0\r\n
\r\n
<?xml version="1.0" encoding="UTF-8"?>\r\n
<request>\r\n
<question1 param="value" />\r\n
<question2 param="value" />\r\n
<question3 param="value" />\r\n
</request>\r\n
POST/lolzorz/xD HTTP/1.1\r\n
主机:本地主机\r\n
用户代理:UserAgentHere/1.0.00\r\n
内容类型:application/xml;字符集=utf-8\r\n
内容长度:0\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
这可能吗
我的服务器信息:
- Mac OS X雪豹(10.6.2)
- Apache2
- PHP5作为一个模块运行
谢谢,如果您指的是来自其他网页的服务器标题,请使用该功能 如果您指的是来自页面的用户请求的标题,则可以使用该函数。尽管如kon所说,首选的方法是:
<?php $postdata = file_get_contents("php://input"); ?>
您需要确保在php.ini中启用了
始终填充\u原始\u发布数据
选项。我想您必须使用$\u服务器变量和
print_r(getallheaders());
您可以使用获取请求头,我认为php无法获取原始输入流的头部分。(已经提到了getallheaders()/。
但至少您可以通过。读取原始post数据。我已经读过,最好使用file\u get\u内容(“php://input"); 获取原始请求数据。