PHP没有收到来自$ resource AngularJS的帖子

时间:2014-05-21 14:12:40

标签: php angularjs rest ngresource

我在Angular中有一个工厂服务,它已成功在我已通过Firebug验证的HTTP请求中发布我的电子邮件,但我的PHP文件没有看到该电子邮件。我正在接收我的PHP文件,因为我可以回复它的响应,但我发送的电子邮件值没有收到,正如我已经提到的那样。

控制器(部分):

$scope.subscribe = function() {
        if($scope.email.length > 0) {
            Subscribe.save({},$scope.email);
        } else {
            alert("Please enter your email address");
        }
    }

厂:

app.factory('Subscribe', ['$resource', function($resource) {
    return $resource( 'server/restdb.php:email', 
        {email: '@email'},
        {

        }
    ); 
}]);

PHP:

<?php
echo 'email: '.$_REQUEST['email'];

我也尝试使用$_POST来接收电子邮件。

所以回顾一下:

  • 成功发送HTTP请求中的电子邮件。
  • 正在访问PHP文件并从中获取响应。
  • PHP没有收到我发送的电子邮件值。

2 个答案:

答案 0 :(得分:1)

尝试使用它:

$aRequest = json_decode(file_get_contents("php://input"), true);
echo 'email: ' . $aRequest['email'];

答案 1 :(得分:0)

哦,$ resource.save有点&#34;很奇怪&#34;。

你应该这样使用它:

var myData = new Subscribe({email: $scope.email});
myData.save();

您可以将工厂简化为:

app.factory('Subscribe', ['$resource', function($resource) {
    return $resource( 'server/restdb.php', {}, {}
    ); 
}]);

在doc:angular.js $resources

中查看更多内容