我是使用REST的新手并且不自信。您是否可以帮助并说明创建REST客户端以使用SSL和授权连接到服务器的最佳方法是什么?我不是要问完整的例子,只是要使用哪个库,或者是某些原生库?
答案 0 :(得分:2)
在Java中,我最喜欢的HTTP客户端库是java.net.HttpURLConnection
。它已经在Java API中;它处理缓存,SSL,身份验证。
这是一个例子: https://github.com/Hypertopic/Porphyry/blob/master/src/org/hypertopic/RESTDatabase.java#L181
答案 1 :(得分:1)
您可以使用内置的HttpURLConnection
课与宁静的服务进行对话。该类还支持https
url,它们为您提供SSL加密。对于身份验证,您可以使用内置机制。
对于用户名+密码或摘要身份验证,您可以使用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开发者的首选客户端。