如何在Vaadin(Java)中显示MJPEG流?

如何在Vaadin(Java)中显示MJPEG流?,java,http,stream,vaadin,mjpeg,Java,Http,Stream,Vaadin,Mjpeg,我正在寻找一种在我的vaadin应用程序中显示MJPEG流(来自ip cam)的方法 我的问题是启动流所需的身份验证 简单获取流的真正简单解决方案: String url = "...urlgoeshere/video.mjpg"; Image image = new Image(); image.setSource(new ExternalResource(url)); content.addComponent(image); 如果我允许匿名连接到相机,它就像一种魅力,但这并不是我真正的目

我正在寻找一种在我的vaadin应用程序中显示MJPEG流(来自ip cam)的方法

我的问题是启动流所需的身份验证

简单获取流的真正简单解决方案:

String url = "...urlgoeshere/video.mjpg";

Image image = new Image();
image.setSource(new ExternalResource(url));
content.addComponent(image);
如果我允许匿名连接到相机,它就像一种魅力,但这并不是我真正的目标

我试图通过以下方式进行身份验证:

Authenticator.setDefault(new MyAuthenticator(username, password));
但这并不影响请求

如果我手动设置请求,如:

String url = "...urlgoeshere/video.mjpg";

Authenticator.setDefault(new MyAuthenticator("username", "password"));

URL obj = new URL(url);
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET"); 
身份验证工作正常,但这种方式我必须自己处理所有图像


有没有更好的方法来显示需要身份验证的流?

我认为您应该能够在外部资源的URL中使用用户名和密码

https://foo:password@example.com

但这取决于网络摄像头用于身份验证的协议, 您还将在中看到用户名和密码 应用程序的html/javascript

还有一点需要注意: 如果您的用户正在使用IE,Microsoft会这样做,
这行不通。

哦,好吧,我不知道微软禁用了它。已经尝试通过登录,但你是对的->不是一个真正干净安全的解决方案。谢谢你的帮助。