大发幸运飞艇_大发幸运飞艇官网

php 获取HTTP POST中不同格式的数据

时间:2020-01-17 02:16:44 出处:大发幸运飞艇_大发幸运飞艇官网

multipart/form-data,这人 是用来上传文件的,在HTTP的head中是Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW

在实际开发中,一般都在使用框架的,我用thinkphp用比较多,在tp5.0中都不可不都后能 使用Request的getInput()函数获取Raw中的数据

HTTP协议中的POST 法律土最好的办法有多中格式的数据协议,在HTTP的head中用不同的Content-type标识.常用的有

用postman测试一下



没疑问,都不可不都后能 接收到

application/x-www-form-urlencoded,这是最常见的,只是from表单的格式.在HTTP的head中是Content-Type: application/x-www-form-urlencoded.

关于php获取HTTP POST数据的法律土最好的办法先介绍到这里

Raw 这人 都在很糙常用,传输的数据在HTTP的body中不可不不可不都后能 一段,都在以键值对的形式存放.在HTTP的head中是Content-Type: application/json,Content-Type: text,Content-Type: application/xml,Content-Type: text/xml,等等形式

用postman测试一下



卧槽,竟然出错了,提示如此发现HTTP_RAW_POST_DATA这人 数组索引,这人 鬼.Google一番,在php的官网看到了一1个多 的话



一1个多 HTTP_RAW_POST_DATA这人 在php5.6中因为被废弃了,在php7.0以前的版本中因为被删除了,我用的php版本为7.2,肯定就出错了

2.使用$GLOBALS['HTTP_RAW_POST_DATA']接收

对于Content-Type: application/x-www-form-urlencoded这人 form表单的数据,在php中,使用$_POST['name']都不可不都后能 直接获取, 如此这人 很糙的

好吧,那就老老实实的用file_get_contents("php://input")获取吧

测试一下



如此疑问,都不可不都后能 正常获取

对于Raw这人 格式的数据,使用以上两种法律土最好的办法如此法律土最好的办法获取到,不可不都后能 使用别的手段.

1.使用file_get_contents("php://input")获取;写一1个多 简单php文件测试一下

Content-Type: multipart/form-data; 这人 格式的数据,在php中使用$_POST['name']都不可不都后能 获取字符数据,使用$_FILES['file']都不可不都后能 获取.

热门

热门标签