Http GET:可能是未处理的拒绝

时间:2017-06-01 10:25:06

标签: angularjs model-view-controller

我是棱角分明的新人。 我想使用http。

从动作名称(MVC)获取数据

在控制台中我得到了GET行,然后发生以下错误: "可能未处理的拒绝:":{"数据":" \ r \ n \ r \ n \ r \ n \ n"

我在html视图文件中的代码:

       [HttpGet]
    public ActionResult OPCVMLoad()
    {
        OPCVM opcvm1 = new OPCVM();
        opcvm1.OPCVMcode = 1;
        opcvm1.OPCVMname = "Bernardin";
        return Json(opcvm1, JsonRequestBehavior.AllowGet);
    }



<script>

    var myApp = angular.module("myApp", []);
    myApp.controller('OPCVMViewModel', ['$scope', '$http', function ($scope, $http) {

        $scope.OPCVM = {
            "OPCVMcode": "",
            "OPCVMname": ""
        };
        $scope.OPCVMs = {};

        $scope.TestClick = function TestClick() {
            alert("test clic");
        };

        $scope.GetAllData = function GetAllData() {
            alert("break point in function GetAllData");
            $http.get("GrilleFast/OPCVMLoad")
                .then(function (response)
                {
                    $scope.OPCVM  = response.data; 
                }) 

        };

    }]);

</script>


<div ng-controller="OPCVMViewModel">
    <input name="BtnAddNew" type="button" value="Load all OPCVM" ng-click="GetAllData()"  />
    {{OPCVM.OPCVMcode}}        <br />
    {{OPCVM.OPCVMname}}




</div>

.cs文件中的代码(操作MVC)

        [HttpGet]
    public ActionResult OPCVMLoad()
    {
        OPCVM opcvm1 = new OPCVM();
        opcvm1.OPCVMcode = 1;
        opcvm1.OPCVMname = "Bernardin";
        return Json(opcvm1, JsonRequestBehavior.AllowGet);
    }

2 个答案:

答案 0 :(得分:2)

这只是一个警告,告诉你在Rest调用中发生错误,而你没有处理它。

您有两种方法可以删除“警告”:

  1. 你处理每一个错误:
  2.         $http.get("GrilleFast/OPCVMLoad")
                .then(function (response)
                {
                    $scope.OPCVM  = response.data; 
                }, function(error){
                     console.log(error); //
                }) ;
    
    1. 如果您不想处理所有可能的错误,可以全局禁用它:
    2. angular.module('myApp').config(['$qProvider', function($qProvider){
         $qProvider.errorOnUnhandledRejections(false);
      
      }]);
      

      我认为已经使用angular 1.5.9引入了它,您可以在此处找到有关它的文档:$qProvider

答案 1 :(得分:0)

适用于

$http.get("OPCVMLoad") 

而不是

$http.get("GrilleFast/OPCVMLoad")