【问题标题】:Angular $http calls not working in Chrome or FirefoxAngular $http 调用在 Chrome 或 Firefox 中不起作用
【发布时间】:2016-11-10 19:18:04
【问题描述】:

我有一个简单的 Angular $http.get 和 post 调用。它在 IE 中完美运行,但在 Chrome 或 Firefox 中无法正常运行。

我在 JS 中保留了一个断点并进行了调试,它恰好在 $http.get('urlAPI') 行中中断,并且没有看到任何指导。调试将我带到我无法遵循的角度方法的细节..

这里有人遇到过类似问题或任何指导。我正在使用 Angular 1.5.8 版。

这是我的简单 Angular 代码

$scope.wakeup = function() {
    $http.get('getTimings').then(function() {
    }
}

【问题讨论】:

  • 错误是什么?
  • 您是否在使用任何其他带有 angularjs 的库?尝试评论所有这些并创建一个简单的$http.get 请求,看看它是否单独工作。
  • 你的api是什么??是 .NET Web API 吗?
  • 您是否添加了onerror 来捕获异常?
  • @Maximus 它不会在屏幕或控制台上抛出任何错误

标签: javascript angularjs


【解决方案1】:

请使用以下内容: 如果您的服务器端脚本是 PHP,那么它将起作用:(如果是 ASP.NET,您应该在 web.config 文件中将 Web 服务添加到 GET)

IMP:请确保您使用的 ng-app 和 ng-controller 名称与 html 中使用的完全相同

 <p>Today's welcome message is:</p>

 <h1>{{myWelcome}}</h1>

</div>

 <p>The $http service requests a page on the server, and the response is set as the value of the "myWelcome" variable.</p>

 <script type="text/javascript">
 var app = angular.module('myApp', []);
 app.controller('myCtrl', function($scope, $http) {
 $http.get("welcome.php") // you can use welcome.htm also
 .then(function(response) {
 $scope.myWelcome = response.data;
    }, function(error){
        console.log(error)
    });
 });
</script>

【讨论】:

  • 这是在 Java 上。我有正确的 ng-app 名称,过去我做过很多应用程序,但这很奇怪,它也适用于 IE。如果这些值不正确,它也不应该在 IE 中工作
  • 谢谢。它在一定程度上帮助我找到了答案,或者至少引导我得到了答案。在 IE 中,它生成了一个空的 json,而在 Chrome 和 Firefox 中,它把我带到了空页面。所以这三个都有问题,但我真正的问题是服务 API 方法。
  • 那么请接受答案,这对其他人也有帮助。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-08
  • 2017-11-08
  • 1970-01-01
  • 1970-01-01
  • 2014-05-05
  • 1970-01-01
相关资源
最近更新 更多