我必须以xml格式向服务器发送请求。我使用DefaultHttpClient和HttpPost(我必须发布请求)使用StringEntity发送xml请求,但我得到了“401 Authorization required”errror.I搜索和我发现需要身份验证(我有用户名和密码),但怎么办对我来说是一个问题。目前,我正在使用“UsernamePasswordCredentials”和“BasicCredentialsProvider”,但它会抛出“ClientProtocolException”。我无法想象出了什么问题?此外,我已经读过认证是不同类型的 - 基本和摘要。我怎么知道我的服务器支持什么?以及如何在Android中实现它们。我对这些东西很新,请帮助。!
谢谢
答案 0 :(得分:0)
这是我的POST方式......不需要身份验证
DefaultHttpClient hc=new DefaultHttpClient();
ResponseHandler <String> res=new BasicResponseHandler();
HttpPost postMethod=new HttpPost("http://mydomain.com/myfile.php";
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
//These are the values you are posting
nameValuePairs.add(new BasicNameValuePair("name", username.getText().toString() ));
nameValuePairs.add(new BasicNameValuePair("username", username.getText().toString() ));
nameValuePairs.add(new BasicNameValuePair("email", email.getText().toString() ));
nameValuePairs.add(new BasicNameValuePair("password", password.getText().toString() ));
postMethod.setEntity(new UrlEncodedFormEntity(nameValuePairs));
String response=hc.execute(postMethod,res);