Как восстановить body и header в transção POST в PHP?
Для извлечения содержимого body
транзакции, которые мы получаем через POST
используем эту функцию file_get_contents('php://input')
. Однако есть несколько компаний, которые могут отправить запрос, сообщение на наши услуги, и мне нужно знать, кто есть кто, то, конечно, должен проверить header
.
, Какие функции должен использовать, чтобы получить body
и header
в то же время?
2
1 answers
" Не существует функции, которая в то же время сделать два должны использовать функцию getallheaders() (это прозвище apache_request_headers()) и file_get_contents('php://input')
и спасти header
и body
соответственно:
Код:
<?php
foreach (getallheaders() as $header => $value) {
echo "$header: $value <br />\n";
}
Выход:
Content-Type:
Content-Length: 0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64)
AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.96 Safari/537.36
Host: localhost
Accept-Language: pt-BR,pt;q=0.8,en-US;q=0.6,en;q=0.4
Accept-Encoding: gzip, deflate, sdch, br
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Connection: keep-alive
Cache-Control: max-age=0
Или функции getallheaders() возвращает array
следующим образом:
array(10) {
["Content-Type"]=>
string(0) ""
["Content-Length"]=>
string(1) "0"
["Upgrade-Insecure-Requests"]=>
string(1) "1"
["User-Agent"]=>
string(114) "Mozilla/5.0 (Windows NT 10.0; Win64; x64)
AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.96 Safari/537.36"
["Host"]=>
string(9) "localhost"
["Accept-Language"]=>
string(35) "pt-BR,pt;q=0.8,en-US;q=0.6,en;q=0.4"
["Accept-Encoding"]=>
string(23) "gzip, deflate, sdch, br"
["Accept"]=>
string(74) "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8"
["Connection"]=>
string(10) "keep-alive"
["Cache-Control"]=>
string(9) "max-age=0"
}
Фильмография:
1
Author: novic, 2017-05-04 20:12:38