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