php - AngularJS HTTP 发布到 PHP

标签 php jquery angularjs post

我使用 $http 方法从 angularjs Controller 向 php 页面发布一些数据,如下所示。

$scope.login = function(){
    var data = {
        'username' : $scope.username,
        'password' : $scope.password
    };
    $http.post('login.php', data).success(function(response){
        console.log(response);
    });
};

我知道我可以使用 php 检索这些数据:

$postdata = json_decode(file_get_contents('php://input'), true);

但我想知道在 angularjs 中是否有更好的方法,所以我可以在 php 中使用简单的 $_POST 来检索数据。

jQuery 中,我们可以简单地使用 $.post 并且这些在 $_POST 中可用于 php .为什么 angularjs 不是那么简单。 当我们在 中执行 $http post 请求时,有什么方法可以填充 php$_POST angularjs。请帮忙。

最佳答案

您需要将您的请求转换为php known格式。
我使用 jQuery $.param 方法来构建它。你可以自己写。

app.config(['$httpProvider', function($http) {  
    $http.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=utf-8';
    $http.defaults.transformRequest = function(data) {
            return $.param(data);
        };
    }]);

urlencoded 遵循简单格式:

username=Name&password=My%20Password

JSFiddle

关于php - AngularJS HTTP 发布到 PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33540195/

相关文章:

javascript - Magento:是否有一些 js 函数可以使 UL 列表的高度相等?

javascript - 使用 ng-repeat 表嵌套数据

php - 通过php将带有日期的csv导入到mysql

javascript - 如何通过 Ajax 和 PHP 使用数据切换

php - 使用 jquery 验证表单并使用 jquery 中的 php 提交(if form.valid()

javascript - 根据文本框的值创建文本框

php - javascript 调用未传递正确的值

jquery - Squarespace 代码块对齐问题

javascript - 如何使用 $transitions 服务获取 toState 参数? (新的用户界面路由器)

angularjs - 在 AngularJS 中将指令插入 HTML 中?