这是引用损坏代码的 fiddle 。当我尝试它时,它应该发送到的服务器没有响应,这让我相信它没有从我的应用程序接收到任何流量。问题很明显吗?如果没有,我可以使用哪些故障排除方法来调查问题?

stackoverflow 想让我内联包含我的代码,所以在这里。
index.html

<div ng-controller="DataEntryCtrl">
      <form ng-repeat="entryField in entryFields">
            <input type="text"
                   ng-model="entryField.fieldData"
                   placeholder="{{entryField.pHolder}}">
      </form>

      <input type="button" ng-click="sendJSON()" value="Object To JSON" />
      <hr/>
       {{res}}
     <ul>
       <li>ID: {{entryFields.id.fieldData}}</li>
       <li>description: {{entryFields.description.fieldData}}</li>
       <li>date: {{entryFields.date.fieldData}}</li>
    </ul>

</div>
controller.js
'use strict';
/* Controllers */
var app = angular.module('Hubbub-FrontEnd', ['ngResource']);

app.controller('DataEntryCtrl', function($scope,$resource) {
   $scope.entryFields = {
     id:           {pHolder:'ID goes here',fieldData:""},
     description:  {pHolder:'Description goes here',fieldData:""},
     date:         {pHolder:'Drop Dead Date goes here',fieldData:""}
   };

   $scope.showJSON = function() {
       $scope.json = angular.toJson($scope.entryFields);
   };
   $scope.sendJSON = function() {
       $scope.entry = angular.toJson($scope.entryFields);
       $scope.res = $resource('http://10.64.16.6:3000/Create',
         {create:{method:'POST'}},{params:$scope.entry});
       };



});

最佳答案

当前,每次用户单击按钮时,您都在创建相同的资源。

您可以做的是在 Controller 中的某处创建服务

var Res = $resource('http://10.64.16.6:3000/res/:id', {id: '@id'});

然后,当用户单击按钮时,创建一个新的资源实例并将您要发送的数据传递给它
$scope.sendJSON = function() {
    $scope.entry = angular.toJson($scope.entryFields);
    var r = new Res();
    r.$save({params: $scope.entry});
};
$save 方法继承自 ngResource 并执行 POST 请求。这是一个 jsfiddle http://jsfiddle.net/jaimem/FN8Yg/19/

在开发人员工具中,请求方法将列为 OPTIONS,因为它是从 jsfiddle 生成的。请求参数将是这样的
params:{"id":{"pHolder":"ID goes here","fieldData":"sdf"},"description":{"pHolder":"Description goes here","fieldData":"sdf"},"date":{"pHolder":"Drop Dead Date goes here","fieldData":"sdf"}}

您可以阅读更多 $resource here

关于angularjs - 为什么我的函数不发送 POST,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13714650/

10-11 17:25
查看更多