1. 程式人生 > >php接收post的json資料【轉載】

php接收post的json資料【轉載】

最近用到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 the post Content-Type is not something PHP understands (such as text/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程式碼如下:
<form action="post.php" method="post">
<input type="text" name="user">
<input type="password" name="password">
<input type="submit">

</form>

post.php程式碼如下:
<? echo file_get_contents("php://input");?>

相關推薦

php接收post的json資料轉載

最近用到ext與PHP互動,ext把json資料post給PHP,但在PHP裡面$_post獲取不到,$_REQUEST也獲取不到,但是通過firedebug看到的請求資訊確實是把JSON資料post給了PHP,這什麼情況?突然想到了以前接觸過flash將圖片二進位制流傳給php,靈機一動用$GLOB

轉載Linux查看 apache,mysql,php安裝路徑

my.cnf sdn mysql目錄 pan sbin dump lin tail art 原文鏈接:http://blog.csdn.net/pengone/article/details/50035889 apache: 如果采用RPM包安裝,安裝路徑應在 /e

php編譯參數註解--不明白許多參數的作用 慎用 –with-curlwrappers參數轉載

大小 debug ttext s參數 without freetype sql安裝 exif ati 在Linux下安裝PHP,源代碼方式安裝,總需要配置很多參數。這裏列出常用配置參數,並詳細用中文解釋說明了。給大家一些參考 編譯PHP的時候慎用 –with-curlwra

轉載php如何給APP端寫接口

style iss base64 方式 span 註意 php div ogr 如何寫好接口 目的:清楚明白所寫接口的用途 安全性:做好接口的安全性,防止接口數據泄露,做好必要的參數加密措施 按需分配: 接受值和返回值要實用,不接受和返回不需要的數據,返回值返回什麽應與使

轉載oracle 資料匯入匯出

oracle 資料匯入匯出   一、oracle中copy from的用法     1.語法及使用說明   1.1 語法   下面我們來看一下SQL*Copy Command的語法及使用說明。   在解釋SQ

轉載Linux下各資料夾的含義和用途 Linux下各資料夾的含義和用途

原文地址:https://www.cnblogs.com/lanqingzhou/p/8037269.html Linux下各資料夾的含義和用途 Linux根目錄”/“下各個系統資料夾的含義和用途 1、/boot 該目錄預設下存放的是Linux的啟動檔案和核心。 2、/initrd 它的英文

轉載筆記:無os的LwIP在TCP server歷程中網路資料傳送,串口出現tcp_write及tcp_receive錯誤。

  2016年09月07日 22:13:58 新野-新野 閱讀數:6180 標籤: LWIP 更多 個人分類: 轉載筆記 做一個,串列埠收到資料然後通過tcp主動傳送出去的東西,但是目前遇到以下問題,當tcp初始化後連

轉載批量維護(建立/修改)客戶主資料函式 SD_CUSTOMER_MAINTAIN_ALL BP自定義螢幕 資料維護

可以用來維護BP自定義螢幕的資料。 分享一下批建立客戶主資料函式:SD_CUSTOMER_MAINTAIN_ALL   TABLES:T077D,ZCITY,T005S,BNKA,ADRC,KNA1.   DATA: TMP_KTOKD(4) TYPE

轉載BP增強 新增自定義螢幕 KNA1 通用資料(英文)

測試通過。 其他參考(中文):https://blog.csdn.net/guangcong2009/article/details/80569877                 英文:http://www.

轉載Kaggle 資料探勘比賽經驗分享

【轉載】Kaggle 資料探勘比賽經驗分享   原文:https://blog.csdn.net/catherine_985/article/details/78781825 簡介 Kaggle 於 2010 年創立,專注資料科學,機器學習競賽的舉辦,是全球最大的資料科學社

轉載解決Java關鍵字作為json資料欄位名問題

轉自:https://blog.csdn.net/jjj11223344/article/details/79957559   在java命名規範中,我們不能採用Java關鍵字如 public、static等命名,但是在服務端資料命名時我們往往會採用某一欄位的英文來命名,這有時候就

轉載SAP連線電腦串列埠讀數(電子稱,磅等資料讀取)

如果出現初始化失敗可能是這個原因: HI sarvesh , thanks for ur response.. the issue is resolved.. friends pls check... the below registry settings also

轉載HBase實踐 | 使用Spark分析雲HBase的資料

雲HBase具有很好的線上入庫和查詢能力,不過在分析上面有比較大的欠缺,這篇文章主要介紹如何使用Spark對雲HBase中資料做複雜分析。 1 雲HBase查詢分析的現狀 HBase原生API:HBase原生API適合基於row key做點查,這個是HBase最擅長的查詢場景 Phoeni

轉載Power Query-大量複雜資料的整理彙總

工作中,生活中不免會遇到需要整理大量複雜資料的情況,單純的靠手動去搜索統計固然可以,但是效率極其低下。 如下圖,列舉了1990年~2015年NBA美職籃全明星的參賽名單,現在需要統計出每個人的參賽次數。 實現效果如下: 下面直接來簡單談一下它的實現思路,首

轉載資料中心網路架構淺談

資料中心網路架構淺談(一) - 肖巨集輝的文章 - 知乎 https://zhuanlan.zhihu.com/p/29881248 資料中心網路架構淺談(二) - 肖巨集輝的文章 - 知乎 https://zhuanlan.zhihu.com/p/29975418 資料中心網路架構淺談(三

matlab 遍歷兩層資料夾,對兩層資料夾進行改變圖片大小處理轉載

<link rel="stylesheet" href="https://csdnimg.cn/release/phoenix/template/css/ck_htmledit_views-

轉載R語言資料處理——資料合併與追加

資料結構的塑造是資料視覺化前重要的一環,雖說本公眾號重心在於資料視覺化,可是涉及到一些至關重要的資料整合技巧,還是有必要跟大家分享一下的。 在視覺化前的資料處理技巧中,匯入匯出、長寬轉換已經跟大家詳細的介紹過了。 今天跟**家分享資料集的合併與追加,並且這裡根據所依賴函式的處理效率,給

轉載fiddler抓包小技巧之自動儲存抓包資料(可根據需求過濾)

說起這個抓包啊,大家都不陌生。辣麼,將自己抓獲的資料儲存下來進行資料分析就是個問題了。一般情況下,這個軟體就是操作軟體的,設定自動儲存的話,只能依靠軟體自身來設定。但是呢,這個fiddler不得不讓我們又一次見識到了它的強大。廢話不多說,咱們直接來看配置哈。 首先: 然後選擇:

轉載在C#中主執行緒和子執行緒如何實現互相傳遞資料

using System; using System.Collections.Generic; using System.Text; using System.Threading; namespace ATest { class A { public static

轉載怎樣把Oracle的資料匯入到SQLServer2005中

怎樣把Oracle的資料匯入到SQLServer2005中 例子:把Oracle的CH330300資料庫的資料匯入到SQLServer2005的Temp資料庫 在本機測試一直沒有成功,一直顯示各種錯誤,網上查詢各種方法無果,下載了ORACLE WIN7 64位客戶端也沒有解決問題,根本就看不到ORACLE的