use*_*252 5 authentication post android httpclient
我正在尝试使用HTTP身份验证在线发布玩家得分,但响应总是401(未经授权),尽管我非常确定用户名和密码是否正确.我究竟做错了什么?
DefaultHttpClient client = new DefaultHttpClient();
Credentials creds = new UsernamePasswordCredentials("user", "passsword");
client.getCredentialsProvider().setCredentials(new AuthScope("http://myurl.com/score.php", 80), creds);
try {
HttpPost post = new HttpPost("http://myurl.com/score.php");
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(3);
nameValuePairs.add(new BasicNameValuePair("score", points));
nameValuePairs.add(new BasicNameValuePair("name", name));
post.setEntity(new UrlEncodedFormEntity(nameValuePairs));
HttpResponse response = client.execute(post);
final int statusCode = response.getStatusLine().getStatusCode();
if (statusCode != HttpStatus.SC_OK) {
throw new Exception();
}
} catch (UnsupportedEncodingException e) {
//
} catch (IOException e) {
//
} catch (Exception e) {
//
}
Run Code Online (Sandbox Code Playgroud)
我的代码出了什么问题?
use*_*252 12
我解决了这个问题.我正在使用
new AuthScope(AuthScope.ANY_HOST, AuthScope.ANY_PORT) // works
Run Code Online (Sandbox Code Playgroud)
而不是以前的
new AuthScope("http://myurl.com/score.php", 80) // error
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6381 次 |
| 最近记录: |