Javascript 角度进入控制器

Javascript 角度进入控制器,javascript,angularjs,Javascript,Angularjs,我正在学习英语。以下代码起作用: .controller('abc', function ($scope, $http) { $http.get("/Handlers/Authentication.ashx") .success(function (data) { alert(data); }) 但是,此功能不: .controller('abc', function ($scope, $http) { $scope.run = function ($scope, $htt

我正在学习英语。以下代码起作用:

.controller('abc', function ($scope, $http)
{
$http.get("/Handlers/Authentication.ashx")
  .success(function (data)
  {
    alert(data);
  })
但是,此功能不:

.controller('abc', function ($scope, $http)
{
$scope.run = function ($scope, $http)
{
    $http.get('/Handlers/Authentication.ashx');
    //  .success(function (data)
    //{
    //  alert(data);
    //});
};
}
我知道我应该在这里使用服务。但出于学习目的,我想知道为什么在内部调用此函数不起作用:

<body ng-app="MainModule">
<div ng-controller="abc">
<div>
    <button type="button" class="btn btn-info" ng-click="run();">{{xx}}</button>

{{xx}

提前感谢您的帮助

,因为您正在获取数据,但不要使用它

$http.get('/Handlers/Authentication.ashx').then(function(data){
       console.log(data);
}, function(err){
   console.log(err);
 })

您正在覆盖此处的控制器注入
$http
服务:

$scope.run = function ($scope, $http)
{
    $http.get('/Handlers/Authentication.ashx');
    //  .success(function (data)
    //{
    //  alert(data);
    //});
};
只需删除作用域函数上的所有参数,它就会工作:

.controller('abc', function ($scope, $http) {
    $scope.run = function () {
        $http.get('/Handlers/Authentication.ashx')
            .success(function (data){
                alert(data);
            });
    };
}