Le contenu de cet article concerne les précautions de publication pour les notes d'étude PHP. Il a une certaine valeur de référence. Maintenant, je le partage avec vous. Les amis dans le besoin peuvent s'y référer
Aujourd'hui, je voulais à l'origine. utiliser Postman Simulate POST pour télécharger un ensemble de données Json sur le serveur. Il s'avère que le serveur ne peut pas accepter les données téléchargées.
Code serveur :
<?php echo "<pre class="brush:php;toolbar:false">"; var_dump($_POST); var_dump($_REQUEST); echo ""; ?>
Code PostMan :
POST /api.php/API/fish_woter_monitoring_add HTTP/1.1 Host: shrimp.cqjufy.com Content-Type: application/json Cache-Control: no-cache Postman-Token: 356cd424-c710-2d33-ffa7-29157f939c56 {"SensorData": [{"equipment_ID": "20180418","PH_value": "7.28","oxygen_value": "5.03","temperature_value": "21.4"}]}
Il s'avère que le serveur ne reçoit jamais les données.
Tout le monde après Baidu recommande d'utiliser php://input pour lire
file_get_contents('php://input')
Vous pouvez également utiliser $GLOBALS['HTTP_RAW_POST_DATA'] pour obtenir des données natives POST, mais les recommandations officielles utilisent php : //input à la place ;
$GLOBALS['HTTP_RAW_POST_DATA']
La différence entre les trois :
$_POST 、$HTTP_RAW_POST_DATA、php://input三者之间的区别
1.Besoin de définir php.ini always_populate_raw_post_data
Ce n'est que lorsque la valeur est activée que cela prendra effet
2.Par rapport à php://input, il nécessite plus de mémoire
ne peut pas être utilisé avec enctype =" multipart/form-data"
1.Impossible d'analyser le contenu des types de données non-application/x-www.form-urlencoded tels que texte/xml, application /json etc.
2.Il a été vérifié qu'il ne peut pas être utilisé pour enctype ="text/plain"
3. la requête HTTP POST est application/x-www -form-urlencoded ou multipart/form-data transmettra les variables dans le script actuel sous la forme d'un tableau associatif.
Recommandations associées :
Configuration logicielle de PHP pour l'apprentissage de PHP
notes d'étude php bases du php orienté objet
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!