我使用commons-httpclient
从PostMethod收到此错误没有可用于DIGEST'realm'@ localhost
的凭据从服务器返回401。
我按照这篇文章的例子 java客户端程序使用HttpClient API发送摘要认证请求(2)
然而,它似乎仍然失败。
我正在尝试连接到XML-RPC服务,我们使用摘要式身份验证。我尝试使用Apache xmlrpc库,但它似乎不支持摘要式身份验证。
有什么想法吗?
感谢。
答案 0 :(得分:1)
我正在尝试做同样的事情。我的XML-RPC客户端现在工作正常:
public static short connectToBugTrackingXmlRpcServer() {
try {
XmlRpcClientConfigImpl xmlRpcClientConfig = new XmlRpcClientConfigImpl();
xmlRpcClientConfig.setServerURL(new URL(CStudioGlobals.bugTrackingConfProperties.getUrlXmlRpcServer()));
xmlRpcClientConfig.setBasicUserName(CStudioGlobals.bugTrackingConfProperties.getUsername());
xmlRpcClientConfig.setBasicPassword(CStudioGlobals.bugTrackingConfProperties.getPassword());
xmlRpcClientConfig.setEncoding("UTF-8");
XmlRpcClient xmlRpcClient = new XmlRpcClient();
xmlRpcClient.setConfig(xmlRpcClientConfig);
CTrackerDynamicProxy xmlRpcProxy = new CTrackerDynamicProxy(xmlRpcClient);
Ticket ticket = (Ticket)xmlRpcProxy.newInstance(Ticket.class);
ticket.query(); // query some tickets
return CONNECTION_SUCCESS;
} catch (Throwable t) {
t.printStackTrace();
displayError(CStudioGlobals.localization.getTerm("error.title.Sql_error"),
CStudioGlobals.localization.getTerm("error.content._Invalid_connection"),
CStudioGlobals.localization.getTerm("error.resolution.Check_your_connection_settings"));
return CONNECTION_RETRY;
}
}
但我想使用http摘要身份验证。你能解释一下你做到了吗? 谢谢,