【问题标题】:add new object to json-server; AngularJS向 json-server 添加新对象; AngularJS
【发布时间】:2016-12-27 11:55:21
【问题描述】:

我有一个 Angular 应用程序,它应该与 json-server 一起用于检索数据和添加新数据(用户反馈)。所以我有一些带有一些数组的 json 数据库,其中一个是 "feedbacks":[],它目前是空的。在我得到的 PUT 方法上:

PUT /feedbacks 404 来自服务器,这是 chrome 控制台 PUT http://localhost:3000/feedbacks 404 (Not Found)

这是我的服务:

angular.module('myApp')
        .constant("baseURL", "http://localhost:3000/")
.service('feedbackService',['$resource','baseURL',function($resource,baseURL){
      this.getFeedback=function(){
        return $resource(baseURL+"feedbacks/:date",null,{
          'update':{
            method:'PUT'
          }
        });
      };
    }]);

这是控制器:

    // contactus.html controllers
.controller('ContactController', ['$scope', function($scope) {
            $scope.feedback = {firstName: "",lastName: "",email: "",date: ""};
        }])
        // Feedback form controller
        .controller('FeedbackController', ['$scope', 'feedbackService', function($scope, feedbackService) {
            $scope.feedbacks = feedbackService.getFeedback().query(function(response) {
                $scope.feedbacks = response;
            });
            $scope.sendFeedback = function() {
                    $scope.feedback.date = new Date().toISOString();
                    $scope.feedbacks.push($scope.feedback);
                    feedbackService.getFeedback().update($scope.feedbacks);
                    $scope.feedbackForm.$setPristine();
                    $scope.feedback = {firstName: "",lastName: "",email: "", date:""};
            };
        }])

getFeedbacks() 方法有效,服务器发送 200,但对于 PUT,我收到 404。

【问题讨论】:

  • 您必须检查您的服务层。前端无事可做。
  • @ramamoorthy_villi 我是新手,我应该在服务层检查什么?
  • 检查 put 方法在服务器部分工作
  • @ramamoorthy_villi 是的 PUT 方法有效,因为我有另一个控制器用于评论并且 PUT 工作正常

标签: angularjs json angular-resource json-server


【解决方案1】:

好的,我解决了 :)) 一个非常愚蠢的错误。不需要推送然后更新,因为我想在数组中创建新对象。

$scope.feedback.date = new Date().toISOString();
feedbackService.getFeedback().save($scope.feedback);

我也将服务更改为:

return $resource(baseURL+"feedbacks/:id",null,{

为每个对象自动增加 id

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-10-27
    • 2017-02-10
    • 1970-01-01
    • 1970-01-01
    • 2019-11-01
    • 1970-01-01
    • 2018-06-05
    相关资源
    最近更新 更多