尝试使用 $httpBackend 为 $.ajax 调用创建模拟。
下面的模拟片段可以正常工作$http.get('/phones')
$httpBackend.whenGET('/phones')
但是当尝试使用相同的
$.ajax({
url: '/phones',
type: 'GET'
})
这引发了 '/phones' ajax 调用的 404 错误。
Jsfiddler 链接在这里。
尝试使用 $httpBackend 为 $.ajax 调用创建模拟。
下面的模拟片段可以正常工作$http.get('/phones')
$httpBackend.whenGET('/phones')
但是当尝试使用相同的
$.ajax({
url: '/phones',
type: 'GET'
})
这引发了 '/phones' ajax 调用的 404 错误。
Jsfiddler 链接在这里。
$httpBackend
正如文档的第一行所述,$httpBackend
是
适用于使用该
$http
服务的单元测试应用程序的虚假 HTTP 后端实现。
如果您不使用该$http
服务,$httpBackend
则将不知道该请求,因此将无法拦截它或模拟响应。
您应该始终使用$http
- 没有理由$.ajax
在 Angular 应用程序中使用。