如何从$ httpBackend获取正则表达式值

时间:2015-09-17 18:24:45

标签: regex angularjs httpbackend

  $httpBackend.whenGET(/api\/product\/[a-zA-Z0-9]{6}/).respond(function(data) {
      // Code to find given ID in collection
  });

当我调用此端点时,我应该返回与给定产品ID(正则表达式值)匹配的产品。我如何访问此值?数据值等于'GET'。

1 个答案:

答案 0 :(得分:0)

我假设您在单元测试中使用$ httpBackend。如果是这样,你有两个选择。您可以选择使用响应来定义自定义响应(这是您在上面所做的)。

或者你可以使用passThrough方法,该方法实际上应该调用API(这会使你的测试稍微更易变,因为它们不能自我依赖,服务中断可能导致测试失败)。

您可以在AngularJS $httpBackend documentation上阅读.get(包括whenGET)和.passThrough方法。

修改

$httpBackend.whenGET(/api\/product\/[a-zA-Z0-9]{6}/)
    .respond(function(method, url, data, headers) {
        /** do something with url */
    });