我正在修改发送电子邮件但由于某种原因无法在我的http帖子中发送数据,在我的php var_dump数据中说数组没有任何proeprties,我没有收到我的PHP脚本中的数据。
网络发送数据:
我的控制器代码:
$http({
method: 'POST',
url: 'php/admin-mail.php',
data: claimDataService.get(),
headers : {'Content-Type': 'application/x-www-form-urlencoded'} ,
}).then(function successCallback(response) {
// this callback will be called asynchronously
// when the response is available
console.log("sucess");
console.log(response);
}, function errorCallback(response) {
console.log("errors");
console.log(response);
});
我的服务:
var claimDataService = angular.module('claimDataService', []);
claimDataService.factory('claimDataService', function() {
var claimData = {}
function set(data) {
claimData = data;
}
function get() {
return claimData;
}
return {
set: set,
get: get,
}
});
管理员-mail.php:
if ($_SERVER["REQUEST_METHOD"] == "POST") {
return $_POST['myData'];
}
答案 0 :(得分:2)
我相信我发现了您的问题,如果您尝试将数据作为JSON,那么您必须拥有
headers : { 'Content-Type': 'application/json' }
然后让您的PHP脚本获取输入
$data = json_decode(file_get_contents('php://input'), true);