当您使用 Postman 或在浏览器中调用它时,它会返回一个呈现精美的图像。现在,从应用程序内部,当我使用 $http 或 jQuery 调用此 API 时,返回的是大量“垃圾”。谁能解释一下这个垃圾是什么?是图片对应的base64编码的二进制数据吗?我需要这些信息才能在我的应用程序中显示此图像。img ng-src="{{photo}}" 和 img data-ng-src="{{photo}}" 都不起作用。我还尝试在 img 标签中明确指定 base64,但没有奏效。
谢谢!
当您使用 Postman 或在浏览器中调用它时,它会返回一个呈现精美的图像。现在,从应用程序内部,当我使用 $http 或 jQuery 调用此 API 时,返回的是大量“垃圾”。谁能解释一下这个垃圾是什么?是图片对应的base64编码的二进制数据吗?我需要这些信息才能在我的应用程序中显示此图像。img ng-src="{{photo}}" 和 img data-ng-src="{{photo}}" 都不起作用。我还尝试在 img 标签中明确指定 base64,但没有奏效。
谢谢!
该 URL 返回图像的二进制文件,例如 JPEG 文件。您可以直接将该 URL 用作src
标记的<img>
。
如果我查看从 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;
}