我有一个具有基本授权的图像 url,我需要动态加载图像。授权后图像将作为数据返回。如何授权处理此图像。目前我这样尝试
<img [src]=" getImage(res.imageurl) | async" />
getImage(imageUrl: string): Observable<File> {
let headers = new HttpHeaders();
headers = headers.append("Authorization", "Basic " + btoa(this.domain + '/' + logindata.username + ':' + logindata.password));
return this.http
.get(imageUrl,{headers:headers}, { responseType: ResponseContentType.Blob })
.map((res: Response) => res.blob());
}
最佳答案
尝试使用授权 token 代替用户名、密码。
喜欢:
@Component({
template: `
<img [src]="img.src + '?bearer=' + bearToken"/>
`
})
export class FooComponent {
img = {
src: 'https://angular.io/assets/images/logos/angular/logo-nav@2x.png'
}
bearerToken = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
}
所以图像链接会像这样创建 https://domain/assets/images/xyz.png?bearer=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9 ……
关于angular - 在 Angular 5 中使用基本授权保存图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48699953/