javascript - $http 在 Angularjs 1.x 中不起作用

标签 javascript angularjs ajax http

我被 Angular 的所有类型的 $http 请求困住了,我试图用 $http 访问其余 API,但我的代码运行了它并且没有在 chrome 网络选项卡中显示任何调用。我正在使用 python simplehttpserver 执行我的项目。

下面是我尝试访问的服务的代码

HTML 代码

<form  class="form-horizontal" method="post" ng-submit="loginModel.login()">
            <div class="form-group">
                <div class="col-md-12">
                    <input type="text" class="form-control" placeholder="Username" ng-model="loginModel.username"/>
                </div>
            </div>
            <div class="form-group">
                <div class="col-md-12">
                    <input type="password" class="form-control" placeholder="Password" ng-model="loginModel.password"/>
                </div>
            </div>
            <div class="form-group">
                <div class="col-md-6">
                    <a href="#" class="btn btn-link btn-block">Forgot your password?</a>
                </div>
                <div class="col-md-6">
                    <button type="submit" class="btn btn-info btn-block">Log In</button>
                </div>
            </div>
        </form>

Controller 代码

module.exports = function ($scope,$rootScope,$state,crudFactory,$http,$resource){

var vm = this;
vm.login = login;

function login() {
    var  userDetail = {
        username:vm.username,
        password:vm.password
    };


    $http({
        method: 'POST',
        url:'http:example.com',
        data:userDetail,
    }).then(function (response) {
       console.log(response)
    }, function (response) {

    });
}

我已经在我的 Controller 中注入(inject) $http 并且还尝试使用 $resource 访问 API,但是当我点击服务点击事件时没有任何反应。

我已经用核心 javascript 试过了,它工作正常,但为什么它不工作 $http 或 $resouce

var xhr = new XMLHttpRequest();
    xhr.open("GET", "https://www.example.com/", false);
    xhr.send();
    console.log(xhr.status);

请帮帮我

谢谢

最佳答案

看起来您的 URL 格式不正确,并且您没有在发生错误时执行任何操作。

 $http({
    method: 'POST',
    url:'http://example.com',
    data:userDetail,
}).then(function (response) {
   console.log(response)
}, function (response) {
   console.log('error response', response);
});

如果出现错误,这至少会在控制台中显示一些内容。

如果 url 更改仍然无效,请检查浏览器开发人员控制台的网络选项卡以查看是否正在发出请求,如果是,是否超时(停留在挂起状态)

关于javascript - $http 在 Angularjs 1.x 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45153234/

相关文章:

javascript - 从JavaScript V.S GSP调用Grails操作

ajax - 使用 Java 脚本跟踪网页中是否发生 Ajax 请求或通过 Selenium Web 驱动程序拦截 XMLHttpRequest

jquery - 对Grails Controller的JQuery Ajax请求不起作用

php - 如何使用 PHP 检查请求是否是 AJAX 请求

javascript - 自制图片轮播不循环

javascript - 在 Linux CentOs 上运行 node.js 服务器

javascript - AngularJs 使用来自自定义 Json 的 ng-repeat 创建表

javascript - 如何将 Controller 链接到 AngularJS 中的指令?

javascript - Node.js - 重复 require ('path'/'module' ) 语句

javascript - 输入字段在嵌套 AngularJS 重复中失去焦点