是否可以为$ httpBackend响应设置通配符?

r.b*_*gil 4 javascript angularjs

假设我在AngularJS中有以下测试代码:

var someURL;
var dummyJSON;
$httpBackend.whenGET(someURL).respond(dummyJSON);
Run Code Online (Sandbox Code Playgroud)

有没有办法使这个响应成为一组URL,而不仅仅是一个?例如,我希望它以对于以/ api /开头的任何url使用相同的虚拟JSON,而不是以/ app /开头.像通配符URL("/ app/*")?

谢谢您的帮助

pau*_*kow 7

我喜欢表达式whenGET(/^\/api\//)- 这意味着开始/api/.在正则表达式中,^将匹配字符串的开头并\/匹配/URL 中的文字.

如果这与您的请求不匹配,请尝试whenGET(/\/api\//)哪些内容应与绝对URL以及相对URL匹配.


mor*_*des 5

如果您不想处理正则表达式,也可以使用函数。就像是:

$httpBackend.when("GET", function(url) {return url.indexOf("/api/") === 0;}
Run Code Online (Sandbox Code Playgroud)