调用$ http.delete但没有任何反应

时间:2017-01-31 09:06:15

标签: angularjs angular-http

我实际上正致力于调用REST服务的webclient。 在我的上一个问题之后,GET请求现在正在运行。 现在我想使用angulars delete方法实现DEL请求。 在以下示例中,我的服务请求已实现。

function ItemsService($http) {
    this.$http = $http;
}

ItemsService.prototype = {
    deleteFoo: function (id) {
        this.$http.delete('http://localhost:3001/posts/' + id)
          .then(function successCallback(response) {
              console.log("DEL send...");
              console.log(response.data);
          }, function errorCallback(response) {
              console.log('Error');
          });
    }
}

module.exports = {
    ItemsService: ItemsService
}

我在ng-click="$ctrl.deleteMe()"的网页上添加了一个按钮。 控制器如下例所示:

function Foo(ItemsService) {
    this.itemsService = ItemsService;
}

Foo.prototype = {
    deleteMe: function () {
        console.log('delete now');
        this.itemsService.deleteFoo(1).then(
            response => {
                console.log('gelöscht? ' + response);
            }
        );
    }
};

如果我现在点击按钮,则没有任何反应。在浏览器中的开发工具的网络跟踪日志中,我看不到DEL请求。 要测试此REST服务请求,我在端口3001上运行JSON服务器工具。 我测试了使用SOAPUI的服务器的可用性,它工作,我看到控制台中的所有请求。 但是没有来自我的测试网页的请求。

任何人都可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

您需要返回

return this.$http.delete('http://localhost:3001/posts/' + id)
          .then(function successCallback(response) {
              console.log("DEL send...");
              console.log(response.data);
          }, function errorCallback(response) {
              console.log('Error');
          });