1

我是使用 REST 的新手,感觉不自信。那么,您能否帮忙说一下创建 REST 客户端以使用 SSL 和授权连接到服务器的最佳方法是什么?我不是在问完整的例子,只是要使用什么库或者一些本机库?

4

2 回答 2

2

在 Java 中,我最喜欢的 HTTP 客户端库是java.net.HttpURLConnection. 它已经在 J​​ava API 中;它处理缓存、SSL、身份验证。

这是一个例子: https ://github.com/Hypertopic/Porphyry/blob/master/src/org/hypertopic/RESTDatabase.java#L181

于 2013-03-04T07:54:54.910 回答
1

您可以使用内置HttpURLConnection类与一个安静的服务对话。该类还支持httpsurl,它为您提供 SSL 加密。对于身份验证,您可以使用内置机制。

对于 Username+Password 或 Digest auth,您可以只使用java.net.Authenticator, 您可能需要像这样扩展:

public class AS7Authenticator extends Authenticator {

    private String user;
    private String pass;

    public AS7Authenticator(String user, String pass) {
        this.user = user;
        this.pass = pass;
        if (this.pass==null)
            this.pass=""; // prevent NPE later
    }

    @Override
    protected PasswordAuthentication getPasswordAuthentication() {
        return new PasswordAuthentication(user,pass.toCharArray());
    }
}

(取自 RHQ 的 JBossAS7 插件)

对于 Android 版本 > 2.3,HttpUrlConnection无论如何,它似乎是 Android 开发人员的首选客户端。

于 2013-03-04T07:47:16.227 回答