我有一個標準的JavaScript AJAX調用,我設置的數據:到JSON數據。JS Ajax調用PHP並獲取Ajax調用數據
$.ajax({
type: "POST",
url: BaseUrl + "User/Login",
//url: BaseUrl + "User/Limit/1/2",
data: '{"apiKey":"c7089786-7e3a-462c-a620-d85031f0c826","appIDGiven":"200","userName":"matt2","password":"pass"}',
success: function(data){
console.log(data);
},
error: function(request){
console.log(request);
},
});
我正試圖獲取php $_POST["data"]
中的數據,這是行不通的。
但是,data: 'test={"apiKey":"c7089786-7e3a-462c-a620-d85031f0c826","appIDGiven":"200","userName":"matt2","password":"pass"}'
的作品。
我想知道是否它可能是我的框架或類似的東西阻止$_POST["data"]
工作或這是不可能的?還是有什麼我可以用來獲得這些數據?
編輯:
所以框架YII和延伸Restfullyii有一個方法來獲得它使用一條線 返回json_decode(的file_get_contents( 「PHP://輸入」),真)數據;
這是獲取所有的數據,而不需要數據=或{數據:但它似乎是返回一個數組,因此Im訪問我的屬性,如$ data [「userName」]其中一個真正的JSON對象應該是$數據 - > [ 「的userName」]。糾正我,如果我錯了任何這我在這種情況下得到數組,因爲我真的發送一個JSON字符串?與json對象?
EDIT X2:
所以PHP是使它成爲一個ASSOC陣列,因爲它是真正的發送到json_decode ..
我不確定,但我認爲數據總是作爲字符串發送到服務器。 – MrB 2012-07-09 16:15:54
@MrB是的,最後我認爲它是作爲字符串發送的,但服務器/客戶端的解釋是不同的。 – tftd 2012-07-10 10:49:21