提问者:小点点

使用HTML中的基本授权显示来自HTTP Get的图像


我有一个服务器,它可以返回标题为content-type:image/jpeg的图像原始数据。 我可以使用Java的HTTPRequest通过将原始数据解析成图像来显示图像,但我想在网站中做同样的事情。 这个电话看起来像

https://mysite:9999/get/capture?1920x1080。

它从相机生成图像并返回数据。 我希望能够在html标记中显示返回的图像,有没有可能解析出来并在JavaScript中生成图像? 也有类似的问题,但大多数都涉及到从实际的图像链接(例如example.com/test.jpg)获取图像,这些链接可以作为源传入。

对于XMLHTTPRequests形式的文本信息,我有几次对同一服务器的调用,这里也有可能吗? 这不是使用React/Angular框架,所有的普通JavaScript。 我们的目标是通过一个可点击的按钮来获取图像并显示它,但是这些细节并不像从HTTP get实际解析原始图像数据那么重要。


共1个答案

匿名用户

有了映像基本授权的附加信息,也许您应该考虑创建一个HTTP拦截器来设置适当的授权头。

这样,当您(通过AJAX)拉取图像内容时,就可以正确地授权请求。 然后,您得到的图像二进制响应可以被base64编码。 完成后,可以使用以下标记将其插入DOM:

<img src="data:image/jpeg;base64,[base64 encoded data]" />

或者,您可以尝试URL签名。

使用普通的时,不能传递授权头。 相反,您向后端发出POST请求,并检索图像的临时链接,并将其设置为标记的图像源。

另外,如果这个答案对你有帮助,请接受它,这样其他有类似问题的人可能会从你的反馈中受益。