0
我正在學習php
和angular
。目前正在探索使用$http
服務將數據發送到服務器端的可能性。這是我想出來的,它似乎工作,但它看起來並不高雅。Angular + PHP:發佈對象最簡單的方法?
角碼:
$http({
method: 'POST',
url: 'server.php',
data: "newUser=" + JSON.stringify(user),
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
} // set the headers so angular passing info as form data (not request payload)
})
.success(function (respose) {
var x = JSON.parse(respose);
console.log(JSON.parse(x));
}).error(function (err) {
console.log(err);
console.log("some kind of error");
});
這是我php
代碼來接收數據,並將其返回:
if (isset($_POST["newUser"])) {
$newUser = $_POST["newUser"];
echo json_encode($newUser);
}
- 爲什麼我必須指定
json
我的名字通過?我的意思是請求的data
下的newUser
前綴。 - 其次,爲什麼我必須爲
json.parse
兩次響應才能將其轉換回JS對象? - 爲什麼我必須指定標題才能傳遞簡單的JSON字符串?
簡單的序列化數據 – saravanabawa
如果您發回JSON數據添加適當的報頭'標題(「內容類型:應用程序/ JSON」);'這可以幫助其他的庫,自動將其轉換爲JSON – Endless
這可以幫助你:http://stackoverflow.com/questions/18866571/receive-json-post-with-php(然後你不必序列化數據)你可以發送json – Endless