angularJS对MVC4 WebAPI2的POST请求不工作

angularJS对MVC4 WebAPI2的POST请求不工作,angularjs,asp.net-mvc-4,http-post,Angularjs,Asp.net Mvc 4,Http Post,正如标题所说,我正在尝试做一篇angularJS http文章。目标是将数据($scope.econData对象)发布到我的本地WebAPI 2应用程序。我知道post正在执行,因为数据正在写入我的测试数据库(SQL Server,但我认为这与此无关)。然而,所有被写入的数据都是空的,因此它没有被正确地发布。我的html/js: <html ng-app="" ng-controller="econAppPostController"> <head> <sc

正如标题所说,我正在尝试做一篇angularJS http文章。目标是将数据($scope.econData对象)发布到我的本地WebAPI 2应用程序。我知道post正在执行,因为数据正在写入我的测试数据库(SQL Server,但我认为这与此无关)。然而,所有被写入的数据都是空的,因此它没有被正确地发布。我的html/js:

<html ng-app="" ng-controller="econAppPostController">
<head>
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.6/angular.min.js"></script>
    <!-- <link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">-->
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
    <!--<script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>></script>
    <meta name="viewport" content="width=device-width, initial-scale=1"> -->
</head>
<body>

    {{angularVerify}}
    {{$scope.responseEconData.item1}}

    <script>
        function econAppPostController($scope, $http) 
            {
            $scope.angularVerify = "angularJS is running...";
            $scope.econData = { "item1": 30, "item2": 40, "item3": 20, "item4": 20, "item5": 20, "item6": 20, "item7": 20, "item8": 20, "item9": 20};

            $http.post("http://localhost:XXXXXX/api/econdata", $scope.econData)
            .success(function (response) { $scope.responseEconData = response; });
            }
    </script>

</body>
</html>
------------------------只是尽职调查记录-------------

我一点也不明白,只是插上插头也没用

这对我不管用

”“还是这个


我已经做了半天了,请告诉我最简单的解决方法。在这一点上,我不在乎它是否合适。顺便说一句,这肯定是帖子的问题。最后,我已经阅读了官方的angular文档,不知道该如何设置帖子的格式,所以如果有人能将我链接到某个东西上,那将非常有帮助

您在javascript中的何处注册了econAppPostController?您在html/JS代码上面发布的内容是完整的吗?我在上面发布的内容绝对是所有的代码。我删除了所有不相关的东西。这实际上是应用程序obv的一小部分,但它应该自己工作。不确定这里“registered”指的是什么,我是angularJS noob,它控制整个html文档:控制器从脚本标记的第一行开始定义。我绝对肯定angularJS正在正常工作,问题在于AngularHTTP post的主体/它传输数据的方式。模板中不应该有“$scope”{{{$scope.responseEconData.item1}}。它应该是{{responseEconData.item1}。你是说它成功地发布了其他内容?是的,我已经解决了。就像你从{{angularVerify}看到的那样,只是一个输入错误。我并不太担心,因为我正在检查服务器端/数据库中的数据传输是否正确。我将尝试在今天之前解决这个问题,并发布我的解决方案,即使最后我只是回到jQuery帖子。
 public EconData POST(EconData x)
            {

            EconData econDataInstance = new EconData();
            econDataInstance.sqlWriteString = "INSERT INTO EconData(item1,item2, item3, item4,item5, item6, item7,item8, item9) VALUES (" + 
            econDataInstance.item1 + "," + 
            econDataInstance.item2 + "," + 
            econDataInstance.item3 + "," + 
            econDataInstance.item4 + "," + 
            econDataInstance.item5 + "," + 
            econDataInstance.item6 + "," + 
            econDataInstance.item7 + "," + 
            econDataInstance.item8 + "," + 
            econDataInstance.item9 + ")";


            econDataInstance.item1 = x.item1;
            econDataInstance.item2 = x.item2;
            econDataInstance.item1 = x.item3;
            econDataInstance.item2 = x.item4;
            econDataInstance.item1 = x.item5;
            econDataInstance.item2 = x.item6;
            econDataInstance.item1 = x.item7;
            econDataInstance.item2 = x.item8;
            econDataInstance.item2 = x.item9;

            //----------------OPEN CONNECTION------------------------------------------------
            SqlConnection myConnection = new SqlConnection("user id=username;" + 
                                           "password=password;" + 
                                           @"Data Source=XXX\SQLEXPRESS;" + 
                                           "Trusted_Connection=yes;" + 
                                           "Initial Catalog=econAppDB;" + 
                                           "connection timeout=30");
            myConnection.Open();
            //----------------OPEN CONNECTION------------------------------------------------

            //----------------WRITE DATA-----------------------------------------------------
            SqlCommand insertDataCommand = new SqlCommand (econDataInstance.sqlWriteString, myConnection);
            insertDataCommand.ExecuteNonQuery();
            //----------------WRITE DATA-----------------------------------------------------

            //----------------CLOSE CONNECTION------------------------------------------------
            myConnection.Close();
            //----------------CLOSE CONNECTION------------------------------------------------
            return econDataInstance;
            }
        }