我正在尝试使用HTTPClient在我的项目中自动化API,并且我计划使用可以由各种请求共享的单例客户端。所以,这是我的单例类的代码:
public class Login {
private static Login Login = null;
private static HttpClient client = null;
public static Login singletonClient() throws IOException {
if (Login == null) {
Login = new Login();
client = new HttpClient();
String username = "username";
String password = "password";
String server = "http://www.myserver.com";
Integer port = "8080";
Credentials defaultcreds = new UsernamePasswordCredentials(username, password);
client.getState().setCredentials(new AuthScope(server, port), defaultcreds);
client.getParams().setAuthenticationPreemptive(true);
}
return Login;
}
public HttpClient getClient() {
return client;
}
}
在我的测试中使用它的方式是:
HttpClient client = Login.singletonClient().getClient();
考虑到我必须在我的项目中自动化10个不同的API并且用户名,密码对于所有API都保持相同,我有以下问题w.r.t此实现:
请注意我是Java的新手,请原谅我是否遗失/混淆。
提前致谢!