`
- 浏览:
523909 次
- 性别:
- 来自:
苏州
-
最近用到ext与PHP交互,ext把json数据post给PHP,但在PHP里面$_post获取不到,$_REQUEST也获取不到,但是通过firedebug看到的请求信息确实是把JSON数据post给了PHP,这什么情况?
突然想到了以前接触过flash将图片二进制流传给php,灵机一动用$GLOBALS['HTTP_RAW_POST_DATA']获取到了。于是就深入的查了一下,原来PHP默认只识别application/x-www.form-urlencoded标准的数据类型,因此,对型如text/xml或者 soap 或者 application/octet-stream之类的内容无法解析,如果用$_POST数组来接收就会失败!故保留原型,交给$GLOBALS['HTTP_RAW_POST_DATA']来接收。
php的HTTP_RAW_POST_DATA
用Content-Type=text/xml类型,提交一个xml文档内容给了php server,要怎么获得这个POST数据。
The RAW/ uninterpreted HTTP POST information can be accessed with:$GLOBALS['HTTP_RAW_POST_DATA'] This is useful in cases where thepost Content-Type is not something PHP understands (such astext/xml).
由于PHP默认只识别application/x-www.form-urlencoded标准的数据类型,因此,对型如text/xml的内容无法解析为$_POST数组,故保留原型,交给$GLOBALS['HTTP_RAW_POST_DATA']来接收。
另外还有一项php://input 也可以实现此这个功能
php://input允许读取 POST 的原始数据。和 $HTTP_RAW_POST_DATA 比起来,它给内存带来的压力较小,并且不需要任何特殊的php.ini 设置。php://input 不能用于enctype="multipart/form-data"。
应用
a.htm代码如下:
<formaction="post.php" method="post">
<inputtype="text" name="user">
<inputtype="password" name="password">
<inputtype="submit">
</form>
post.php代码如下:
<?echo file_get_contents("php://input");?>
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
此代码用c++实现了http客户端的编写,其中包括了多字节转utf8(已在ExecuteRequest函数中实现,不用再引用所给的编码转换),get和post两种请求方式,后面有json数据的解析以及实现,详情可去博客...
HttpClient Post提交多文件及多个普通参数,已经封装成工具类。 需传入 要请求的url 普通参数map 例 map.put("param1","张三"); 需要传入的文件流map 其中key为文件名 服务端接收无乱码。
Retrofit2 登录Demo @Post json数据到服务器 addConverterFactory(GsonConverterFactory.create()) 把服务端返回的json数据解析成实体的ApiResult<ApiToken>
Java Json解析,Java Web Json解析,Java Web服务端获取Json数据,客户端通过HTTP获取Json数据
客户端(Web/ApiClient/queryToken.aspx )以post方式提交json数据来访问API服务端(WebApi:ApiServe/queryToken.aspx),api服务端接受到数据在云端处理以后在以json的形式返回给客户端 步骤:1.修改客户端: WebWeb:...
Android客户端与服务端的JSON交互数据的实现,实现了客户端与服务端交互JSON数据的实现,有比较好的学习意义,积分也比较少
C# webservice 接口调用和开发 winform客户端发送默认格式L和json格式数据,服务端接收默认格式和json格式数据,自己做的测试,有不清楚的,可以看博文介绍,包括客户端和服务端,刚测试完,没问题,趁热发布
VS2013写的MFC中通过POST的JSON数据格式与WEB服务器通信调试程序,可输入WEB上传地址,可在程序中修改JSON数据格式,其中含Unicode码转中文函数“UnicodeToChinese”可实现中英文混合Unicode码转Unicode字符集环境下...
这次是通过tcp收发json的例子。里面的程序应该用qt creator 可以直接运行。
java服务端生成json(json服务端),可以在浏览器上访问获取查看json,已测试通过
【Android 开发】: Android客户端与服务端之间使用JSON交互数据。 http://blog.csdn.net/ahuier/article/details/15493603 服务端代码
NULL 博文链接:https://idoveu.iteye.com/blog/1575849
【Android 开发】: Android客户端与服务端之间使用GSON交互数据。 http://blog.csdn.net/ahuier/article/details/16871741
NULL 博文链接:https://1017401036.iteye.com/blog/2301854
案例很简单就是一个简单的客户端和服务端接收json数据,服务端指定了一个json数据发送的,没有进行手动表格输入动态发送json数据,有此意图可自行建立数据表格提交服务器。
一个简单实用的WebService服务端开发样例,采用Spring MVC,利用 x-fire资源,加入 log4j日志记录,加入maven来获取对应依赖。 该服务提供一个针对 TRSServer 全文检索服务器数据库 的检索功能,通过 url来执行全文...
服务端用的是PHP写的。返回的是json格式的数据 echo json_encode(array('data'=>array("hasnext"=>0,"info"=>$rows))); $rows是查询数据库出来的数组
下面小编就为大家分享一篇Android中post请求传递json数据给服务端的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧