将图像从响应返回到角度分量

时间:2017-08-03 16:15:56

标签: node.js angular express

我很亲密,我可以品尝它。我的服务器正在返回图像并在响应中发送它。 现在我如何让我的角度组件显示它。这是我到目前为止所拥有的。

这是我的服务:

getImage(query){
       return this._http.get(this.API_URL + this.baseUrl + query)
         .map(res => res.json());
   }

这是后端电话。

res.writeHead(200, {'Content-Type': 'image/jpeg'});
var image  = new Buffer(rs.recordset[0].Image);
res.end(image);

这是组件:

searchImages(query: string){
    this.searching = true;
    return this._imageService.getImage(query).subscribe( 
       data => {
            this.images = data;
       },
    )
  }

错误是:

ERROR SyntaxError: Unexpected token � in JSON at position 0

1 个答案:

答案 0 :(得分:0)

在模板中添加img标记:

 <img class="myimageclass" [src]="imageInBase64"/>

所以现在你已经将src绑定到&#34; imageInBase64&#34;组件的变量。

由于您已将图像作为缓冲区,因此只需将其转换为base 64:

this.imageInBase64 = image.toString('base64');

绑定+角度变化检测应该处理其余部分。 哦,不要忘记通过内联/ css /等管理宽度,高度等。