我正在使用 loopback-component-storage 来将图像上传到服务器。
https://docs.strongloop.com/display/public/LB/Storage+component

我也有AngularJS JavaScript SDK,因此我的lb-services.js是动态更新的。
https://docs.strongloop.com/display/public/LB/AngularJS+JavaScript+SDK

现在,我想在网页上显示来自此环回组件存储模型(称为容器)的照片,因此我可以在 Angular Controller 方法getFile中使用(来自lb-service),该方法“获取指定容器中指定文件的信息”。像那样:
$scope smthing = Container.getFile({container: 'news-imgs', file: 'smallpic.pnh'})
或者我可以使用方法下载,即“下载指定容器中的文件”。像那样:
$scope smthing = Container.download({container: 'news-imgs', file: 'smallpic.png'})
在我的 Controller 中。

现在的问题是,当我在.html文件{{smthing}}中编写代码时,第一种方法将向我显示
{ "container": "news-imgs", "name": "smallpic.png", "size": 757, "atime": "2015-12-01T11:49:36.840Z", "mtime": "2015-12-01T11:49:36.840Z", "ctime": "2015-12-01T11:49:36.840Z"}
第二种方法会显示出很多可悲的迹象,像这样:
"0":"�","1":"P","2":"N","3":"G","4":"\r","5":"\n","6":"\u001a","7":"\n","8":"\u0000","9":"\u0000","10":"\u0000","11":"\r","12":"I","13":"H","14":"D","15":"R","16":"\u0000","17":"\u0000","18":"\u0000","19":"\u0014","20":"\u0000","21":"\u0000","22":"\u0000","23":"\u0012","24":"\b","25":"\u0003","26":"\u0000","27":"\u0000","28":"\u0000","29":"l","30":"\u000e","31":"\u000e","32":"\"","33":"\u0000","34":"\u0000","35":"\u0000","36":"\u0019","37":"t","38":"E","39":"X","40":"t","41":"S","42":"o","43":"f","44":"t","45":"w","46":"a","47":"r","48":"e","49":"\u0000","50":"A","51":"d","52":"o","53":"b","54":"e","55":" ","56":"I","57":"m","58":"a","59":"g","60":"e","61":"R","62":"e","63":"a","64":"d","65":"y","66":"q","67":"�","68":"e","69":"<","70":"\u0000","71":"\u0000","72":"\u0001","73":"�","74":"P","75":"L","76":"T","77":"E","78":"�","79":"�","80":"�","81":"�","82":"�","83":"�","84":"�","85":"\u0000","86":"r","87":"�","88":"�","89":"�","90":"�","91":"\u0000","92":"�","93":"�","94":"\u0000","95":"~","96":"�","97":"�","98":"�","99":"�","100":"\u0000","101":"x","102":"�","103":"\u0012","104":"�","105":"�","106":"\u0000","107":"","108":"�","109":"\t","110":"�","111":"�","112":"\u0016","113":"{","114":"�","115":"\u0002","116":"�","117":"�","118":"(",...etc
我认为这是Image对象,但是在json中,对吗?

我还尝试将{{smthing}}扔到<img src="">标记和<img ng-src="">中,但它也无法正常工作。

问题是:如何显示这张照片?
有人可以帮我吗?

问候,艾伦。

最佳答案

无需转换为base64即可显示图像。
只需使用此技巧即可。

假设您的container NameImage Name

  • Container Name = news-imgs
  • File Name = smallpic.png
    然后下载链接就像
    /api/containers/news-imgs/download/smallpic.png
    这意味着您可以通过以下方式准备下载链接
    /api/container/Your-Container-Name/download/Your-File-Name

  • 而且在您看来,您可以显示类似
    <img ng-src="/api/container/Your-Container-Name/download/Your-File-Name" />
    
    <img ng-src="/api/containers/news-imgs/download/smallpic.png" />
    

    现在使用Angular为每个图像动态生成下载链接。

    关于javascript - loopback-storage-component如何显示图片-文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34020588/

    10-12 15:46