苗条的PHP(“请求体”文档的解释)

时间:2013-07-12 15:40:44

标签: php xml json http slim

我第一次使用Slim PHP,我正在尝试理解其中一个概念。在纤薄的PHP文档中,它声明:

  

请求正文

     

使用请求对象的getBody()方法获取HTTP客户端发送的原始HTTP请求正文。这对于使用JSON或XML请求的Slim应用程序特别有用。

<?php
$request = $app->request();
$body = $request->getBody();

我的问题是,什么是“原始HTTP请求主体”?它只是页面正文中所有HTML的字符串吗?它存储的格式是什么? echo $body会是什么样的?如果我var_dump($body),我会string(0)""。我该如何使用它?

2 个答案:

答案 0 :(得分:1)

我只是把它作为答案而不是评论......

原始请求数据是作为POST请求的主体从浏览器提交的数据。 http://en.wikipedia.org/wiki/POST_%28HTTP%29#Use_for_submitting_web_forms

从技术上讲,它可用于从通常的html表单中读取数据,但这没有多大意义,因为PHP做得足够好并将所有内容放入$ _POST。

如果您有一些发送XML或JSON数据的javascript,您可能需要读取原始数据,而PHP本身并不接受这些数据。

答案 1 :(得分:1)

您要求的条款在RFC2616: Hypertext Transfer Protocol -- HTTP/1.1

中定义

例如,特别是消息(请求/响应)正文是什么:4.3 Message Body

如果这些RFC对您来说是新手,请抓住它,从上到下阅读,并尽可能多地了解。你会开始看到互联网上的这些东西是如何工作的。

管道版本2.0也有一些变化:

以防你感兴趣。