【发布时间】:2015-01-13 19:37:22
【问题描述】:
看看下面的代码:
DefaultHttpClient http = new DefaultHttpClient();
http.getCredentialsProvider().setCredentials(
new AuthScope(AuthScope.ANY_HOST, AuthScope.ANY_PORT),
new UsernamePasswordCredentials(
Configuration.username,
Configuration.developerKey ) );
HttpPost post = new HttpPost(strURL);
StringEntity entity = new StringEntity( ac.toXMLString() );
entity.setContentType("text/xml");
post.setEntity( entity );
org.apache.http.HttpResponse response = http.execute( post );
它不会产生错误。但是来自服务器的响应我得到“无授权标头”。使用 Wireshark 检查请求会发现确实没有设置基本身份验证。
这怎么可能?
【问题讨论】:
-
你的其他标题设置了吗?例如,您的 Content-Type 是否设置为 text/xml?
-
是的,除了身份验证之外,一切似乎都是正确的。
标签: java httpclient basic-authentication