0

我有一个无线网络摄像机,我想制作自己的网页来显示它的实时流。流的地址是"http://192.168.1.2:8082/index.cgi"(假定的),它需要用户身份验证。这意味着当我们在浏览器中输入上述 URL 时,它会要求输入用户名和密码。

我想要的是制作一个Java小程序,在加载Java小程序时,它应该验证URL并显示图像/流。

情况就是这样,现在的基本问题是

Q:Java小程序中如何进行Http认证?

我会感谢每一个答案。

4

1 回答 1

1

您可以通过创建一个HttpURLConnection并在 URL 中附加用户名和密码来实现它。作为:

URL myURL = new URL("http://192.168.1.2:8082/index.cgi?username=user&password=");
HttpURLConnection myConnection = (HttpURLConnection) myURL.openConnection();
myConnection.setDoOutput(false);
int status = ((HttpURLConnection) myConnection).getResponseCode();

或者(而不是将用户名/密码附加到 url),您可以尝试(不确定 Applet 中是否允许)为 http 请求设置默认身份验证器,如下所示:

Authenticator.setDefault (new Authenticator() {
    protected PasswordAuthentication getPasswordAuthentication() {
        return new PasswordAuthentication ("username", "password".toCharArray());
    }
});

您还可以使用非常易于使用的Apache HttpComponents HttpClient 。要了解有关 HTTP 请求如何在 Java 中工作的更多信息,请参阅此答案

于 2012-06-08T10:35:01.210 回答