有什么方法可以用angularjs的$httpBackend模拟来自API的图像?

Is where way to mock image which comes from API with $httpBackend of angularjs?

我正在做量角器测试并使用 angular-mocks 来 "fake" 请求。 在我的应用程序中,应该显示图像的地方是:

<img ng-src="api/documents/image/{{file.Id}}">

是否可以像 json 那样拦截获取图像数据的请求并用一些伪造的图像数据替换它?

$httpBackend.whenGET('api/documents/123').respond(200,[]);

目前我的屏幕上出现了损坏的图像图标,我希望用一些假图像来代替。 我希望这是可能的...

亲切的问候

ngSrc 只接受 expression/static 路径 - 它不执行你可以模拟的 $http 调用,除非你的表达式是一个函数调用来获取图像,这可能不是你想要什么。我会推荐:

1) 添加一个配置变量到你的图片路径中,可以为 dev/prod 切换,例如:

 ng-src="{{ baseUrl }}/api/documents/image/{{file.Id}}"

2) 将此 baseUrl 指向开发服务器,该服务器可提供您想要的任何模拟图像。例如,您可以创建一个简单的 Express 服务器,为每个请求传送相同的图像。