Я получаю запрос POST на мой скрипт api.php. Содержание красного с использованием этого кода:
$fp = fopen('php://stdin', 'r');
$all = "";
while($line = fgets($fp, 4096)) {
$all .= $line;
}
echo $all;
выглядит так:
------------V2ymHFg03ehbqgZCaKO6jy
Content-Disposition: form-data; name="intro"
O
------------V2ymHFg03ehbqgZCaKO6jy
Content-Disposition: form-data; name="title"
T
------------V2ymHFg03ehbqgZCaKO6jy
Content-Disposition: form-data; name="apiKey"
98d32fdsa
------------V2ymHFg03ehbqgZCaKO6jy
Content-Disposition: form-data; name="method"
/media/add
------------V2ymHFg03ehbqgZCaKO6jy
Content-Disposition: form-data; name="upload_field"; filename="original_filename.png"
Content-Type: image/png
------------V2ymHFg03ehbqgZCaKO6jy--
Как видите, я получаю 4 параметра, называемых intro, title, apiKey и method, и один файл с именем original_filename.png размером 1460 байт.
К сожалению, мой массив $ _POST пуст. Что странно, если orginal_filename.png меньше 1450 байт. $ _POST содержит все параметры, а stdin пуст.
Я бы хотел иметь возможность читать эти поля, как обычный человеческий PHP из $ _POST.
Что нужно сделать, чтобы правильно прочитать параметры этого запроса POST из $ _POST?