POST时AngularJS错误但刷新后

时间:2017-02-05 12:12:14

标签: javascript angularjs

我在我的控制器中有这个功能,它向数据库发送一个POST请求(SQLite)。该函数绑定到html中的ng-click,当我尝试添加时,我得到500内部服务器错误。然后,如果我刷新页面,则会显示新项目。为什么会这样?

app.controller("Ctrl", ["$scope", "$q", "$log", "$http", "dataService", function($scope, $q, $log, $http, dataService) {
  $log.debug("Initializing Controller");

  $scope.good = [];

  $scope.addGood = function(body) {
    $log.debug($scope.good.length+1);
    $log.debug(body);
    $http.post('/goods', {
        'id': "2",
        'body': "yey",
        'author': "suh",
        'date': "suh"
    });
  };
}]);

2 个答案:

答案 0 :(得分:0)

这意味着处理POST请求的服务器方法遇到错误。你得到500错误(这实际上只意味着:"服务器上出了问题,去查看服务器日志")。

显然,服务器方法将记录保存到SQLite ok,之后失败了。我这样说,因为页面刷新显示数据已经存储好了。

答案 1 :(得分:0)

  

我收到500内部服务器错误。

这意味着某些代码在您的API(后端)中出错。

  

然后,如果我刷新页面,则会显示新项目。

这意味着在您的后端,您的API正在插入对象(您正在从前端发送的数据)。

由于您还没有向我们提供后端(API)代码,因此我只能假设在SQLite中插入数据之后出现问题。

请查看那里,您将获得解决方案或在您的问题中发布您的代码。

希望它有所帮助。