2

重複の可能性:
生の投稿データを取得する

リクエスト本文がフォーマットされている場合php://inputを除いて、からの読み取りは機能します。この場合、何も読み取られません。multipart/form-data

php://input一度しか読み取れないと聞いたことがありますが、これが原因であると思われます (つまり、PHP は、私がそれを手に入れる前にphp://input、それを認識したときに読み取りを行っている可能性があります)。multipart/form-dataただし、テストでは、問題なくストリームから複数回読み取ることができることがわかりました。

形式に関係なくリクエストボディを取得する方法はありますか?

ここに私がこれまでに持っているものがあります:

$body = '';   

$handle = fopen('php://input', 'r');
while(!feof($handle)) {
    $body .= fread($handle, 1024);
}
4

1 に答える 1

0

PHP に常に $HTTP_RAW_POST_DATA を入力させることができます http://www.php.net/manual/en/ini.core.php#ini.always-populate-raw-post-dataを参照してください 。

于 2012-11-15T00:50:38.487 に答える