【问题标题】:What format does the Google Places Photos API return the image in?Google Places Photos API 以什么格式返回图像?
【发布时间】:2015-07-16 17:04:43
【问题描述】:

看看这个 API:https://maps.googleapis.com/maps/api/place/photo?maxwidth=400&photoreference=CnRtAAAATLZNl354RwP_9UKbQ_5Psy40texXePv4oAlgP4qNEkdIrkyse7rPXYGd9D_Uj1rVsQdWT4oRz4QrYAJNpFX7rzqqMlZw2h2E2y5IKMUZ7ouD_SlcHxYq1yL4KbKUv3qtWgTK0A6QbGh87GB3sscrHRIQiG2RrmU_jF4tENr9wGS_YxoUSSDrYjWmrNfeEHSGSc3FyhNLlBU&key=AddYourOwnKeyHere

当您使用 Postman 或在浏览器中调用它时,它会返回一个渲染精美的图像。现在,在应用程序内部,当我使用 $http 或 jQuery 调用此 API 时,返回的是大量“垃圾”。谁能解释一下这个垃圾是什么?是图片对应的base64编码的二进制数据吗? 我需要此信息,以便我可以在我的应用程序中显示此图像.. img ng-src="{{photo}}" 和 img data-ng-src="{{photo}}" 都不起作用。我也试过在img标签中明确指定base64,没用。

谢谢!

【问题讨论】:

  • 你试过<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIA..." />
  • 是的,我做到了,只是为了让您了解这个“垃圾”的样子。这是典型图像的前 5%,����JFIF��*ExifII*1Google��@ICC_PROFILE0ADBEmntrRGB XYZ �acspAPPLnone���-ADBE cprt�2desc0kwtpt�bkpt�rTRC�gTRC�bTRC�rXYZ �gXYZbXYZtextCopyright 1999 Adob​​e Systems IncorporateddescAdobe RGB
  • this demo 中工作正常,将url 传递给ng-src。一定是有其他问题。尝试使用$sce.trustAsUrl()

标签: jquery angularjs image google-places-api google-photos


【解决方案1】:

该 URL 返回图像的二进制文件,例如JPEG 文件。您可以将该 URL 直接用作<img> 标记的src

【讨论】:

  • 是的,就是这样。。我做了一个多余的额外调用。。正如你提到的,url本身可以直接用作src。谢谢!
【解决方案2】:

如果我查看从google api返回的页面的视图源,它是api直接返回图像。

确切地说,它在响应标头上返回 image/png 内容类型。

这是使用 C# Web Api 2 的 API 代码示例:

public HttpResponseMessage Get(int? id){

        var path = HostingEnvironment.MapPath("~");
        path = Path.Combine(path, "Static", "robot.png");

        HttpResponseMessage response = new HttpResponseMessage();
        var fileStream = new FileStream(path, FileMode.Open);
        var streamContent = new StreamContent(fileStream);

        response.Content = streamContent;

        response.Content.Headers.ContentType = new MediaTypeHeaderValue("image/png");

        return response;
}

还有 tadaaa...API 正在工作:)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多