【发布时间】:2014-12-03 16:53:41
【问题描述】:
我在 Java 6 中运行 HttpClient 4.3.6。当我运行以下代码时,身份验证似乎成功。返回的状态码是 200。但是,我在控制台中收到以下错误消息:
警告:NEGOTIATE 验证错误:提供的名称无效(机制级别:无法加载配置文件 C:\Windows\krb5.ini(系统找不到指定的文件))
如何消除此警告?
CloseableHttpClient httpclient = HttpClients.createDefault();
HttpContext localContext = new BasicHttpContext();
HttpGet method = new HttpGet(url);
CredentialsProvider credsProvider = new BasicCredentialsProvider();
credsProvider.setCredentials(
new AuthScope(host, 80),
new NTCredentials(userid, password, host, login_domain));
localContext.setAttribute(HttpClientContext.CREDS_PROVIDER, credsProvider);
String filePath = null;
// Execute the method.
CloseableHttpResponse clientResponse = httpclient.execute(method, localContext);
HttpEntity entity = clientResponse.getEntity();
int statusCode = clientResponse.getStatusLine().getStatusCode();
if (statusCode != HttpStatus.SC_OK) {
System.err.println("Method failed: " + method.getRequestLine());
}
【问题讨论】:
标签: java iis httpclient ntlm