【问题标题】:How to display MJPEG-stream in Vaadin (Java)?如何在 Vaadin (Java) 中显示 MJPEG 流?
【发布时间】:2015-08-22 16:49:22
【问题描述】:

我正在寻找一种在我的 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"); 

身份验证有效,但这样我必须自己处理所有图像。

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

【问题讨论】:

    标签: java http stream vaadin mjpeg


    【解决方案1】:

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

    https://foo:password@example.com

    但这取决于网络摄像头用于身份验证的协议, 您还将在 您的应用程序的 html / javascript。

    还有一个注意事项: 微软做了disable this some time ago,所以如果你的用户使用IE, 这行不通。

    【讨论】:

    • 哦,好吧,不知道微软禁用了这个。已经尝试通过登录,但您是对的-> 不是一个真正干净和安全的解决方案。感谢您的帮助。
    猜你喜欢
    • 2021-04-13
    • 2013-05-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-06
    • 1970-01-01
    相关资源
    最近更新 更多