Javascript 发送到服务器$http.post的邮件

Javascript 发送到服务器$http.post的邮件,javascript,angularjs,post,Javascript,Angularjs,Post,你好,这是我的json: [ { "name": "AAAAAA", "date": "28-03-2016", }, { "name": "BBBBBB", "date": "20-12-2016", }, { "name": "CCCCCC", "date": "09-01-2016", }, { "name": "DDDDD

你好,这是我的json:

[
    {
        "name": "AAAAAA",
        "date": "28-03-2016",
    },
    {
        "name": "BBBBBB",
        "date": "20-12-2016",
    },
    {
        "name": "CCCCCC",
        "date": "09-01-2016",
    },
    {
        "name": "DDDDDD",
        "date": "21-07-2016",
    }
]
我的javascript:

var app = angular.module('app', []);
    app.service('service', function($http, $q){
        var deferred = $q.defer();

        $http.get('names.json').then(function(data){
            deferred.resolve(data);
        });

        this.getNames = function() {
            return deferred.promise;
        }
    });
    app.controller('FirstCtrl', function($scope, service, $http) {
        var promise = service.getNames();
        promise.then(function (data) {
            $scope.names = data.data;
            console.log($scope.names);
        }
    );
    $scope.postfunction = function() {
        $http.post('serwerUrl',{'name':name})
        .success(function(data){console.log('data success');
    };
});
HTML:

<tbody>
    <tr ng-repeat="name in names">
        <td>{{name.name}}</td>
        <td>{{name.date}}</td>
        <td><button ng-click="postfunction(name.name)">POST</button></td>
    </tr>
</tbody>

{{name.name}
{{name.date}
职位

我想做的是当我点击按钮“POST”name.name POST to server时。我在postfunction()中尝试了$http.post,但出现了错误“(501不支持的方法('OPTIONS'))”和控制台中的“对飞行前请求的响应未通过访问控制检查:请求的资源.Origin上不存在“访问控制允许源站”头。

服务器/api不支持选项头,这是CORS。 在每个请求之前,angular执行一个基本上是握手的选项头。它询问服务器是否允许它想要执行的请求

确保您阅读了有关CORS的更多信息,并且服务器实现了必要的功能


在角度>=1.5的情况下,不推荐使用success