你应该如何使用 NT 身份验证Google Http Client
?
我可以找到大量关于 and 的信息,Apache HttpClient
并且NTCredentials
我可以正常工作,但在我试图在其上标准化新代码的 Google 客户端上却一无所获。
我已经做到了这一点:
final NTCredentials ntc = new NTCredentials(System.getProperty("user.name"), args[0], InetAddress.getLocalHost().getHostName(), "DOMAIN");
final BasicCredentialsProvider cp = new BasicCredentialsProvider();
cp.setCredentials(AuthScope.ANY, ntc);
final HttpClientBuilder hcb = HttpClientBuilder.create();
hcb.setDefaultCredentialsProvider(cp);
final HttpTransport ht = new ApacheHttpTransport(hcb.build());
我得到了这个例外:
Exception in thread "main" java.lang.UnsupportedOperationException
at org.apache.http.impl.client.InternalHttpClient.getParams(InternalHttpClient.java:210)
at com.google.api.client.http.apache.ApacheHttpTransport.<init>(ApacheHttpTransport.java:129)
at GoogleHttpClientScratch.main(GoogleHttpClientScratch.java:36)
由以下原因引起org.apache.http.impl.client.InternalHttpClient.java
:
@Override
public HttpParams getParams() {
throw new UnsupportedOperationException();
}