小编典典

在动态ngSrc请求中强制使用HTTP拦截器

angularjs

我创建了一个AngularJS应用程序,该应用程序从OAuth安全的后端加载图像。通过向Angular添加一个额外的拦截器以配置$httpProvider正确的身份验证标头来配置我的OAuth库。

我的HTML模板中的源代码如下所示:

<img ng-src="{{ '/users/1/images/' + imageId }}">

我的问题是该ngSrc指令所创建的http请求被$http实现忽略,导致请求的身份验证错误。正常的API调用功能正确(由我的控制器/服务使用$http$resource直接调用的功能)。


阅读 312

收藏
2020-07-04

共1个答案

小编典典

ngSrc指令仅控制srcimg的常规属性,这使浏览器像其他图像一样请求该图像,而不是通过Javascript来请求,因此我认为这不能被拦截。

但是,您可以做的是编写一个新指令,保存httpSrc。然后,可以使用调用来获取图像$http,然后使用诸如使用来自ajax的原始图像数据请求数据URI之类的内容来创建带有响应的数据URI(尽管我不确定浏览器是否支持它)。

2020-07-04