一尘不染

AngularJS $ httpBackend-“预期没有更多请求”错误

angularjs

看来是有效的解决方案,显示了如何使用$httpBacked
http://jsfiddle.net/EgMpe/8/

但就我而言:

路线

app.config(['$routeProvider', function($routeProvider) { $routeProvider.

    when('/',  {templateUrl: 'partials/user-list.html'}).

伪造的服务:

app.run(function($httpBackend) {

        var users = [{"id":1,"name":"bob","email":"bob@bobs.com"}, {"id":2,"name":"bob2","email":"bob2@bobs.com"}]

        $httpBackend.whenGET('/rest/users').respond(function(method,url,data) {
            console.log("Getting users");
            return [200, users, {}];
        });
    });

..

真实服务:

services.factory('Users', function($resource){
    return $resource('/rest/users', {}, {
        get:        {method: 'GET', isArray:true}
    });
});

转到将我重定向到页面的“ /”路由时出现 错误user-list.html

错误:意外请求:GETpartials / user-list.html在$ httpBackend … / mysite / public /
angular / libs / angular-1.2.0 / angular-mocks.js:1060:9上没有更多请求了

问题1: 是否httpBackend阻止其他http要求?

我试图使用 passThrough 方法让http到达真实服务器端:

$httpBackend.whenGET(/^\/mysite\//).passThrough();

但这无济于事。


阅读 192

收藏
2020-07-04

共1个答案

一尘不染

啊..抱歉,我的RegEx错了:

如果输入 $httpBackend.whenGET(/partials/).passThrough();

然后所有人开始工作。

因此,我得到了教训:不要忘了说: passThrough(); 与正确的 RegEx

2020-07-04