我在三星银河选项卡中测试了 SOAP 方法并且工作正常。
我在Android 冰淇淋三明治上测试过的相同代码无法正常工作。
下面是我的代码,
HttpPost httppost = new HttpPost("xxxxxx");
httppost.setHeader("Content-type", "text/xml; charset=utf-8");
httppost.setHeader("SOAPAction", SoapAction);
StringEntity se1 = new StringEntity(env,HTTP.UTF_8);
se1.setContentType("text/xml");
se1.setContentEncoding(new BasicHeader(HTTP.CONTENT_TYPE, "text/xml; charset=utf-8"));
httppost.setEntity(se1);
HttpClient httpclient = new DefaultHttpClient();
BasicHttpResponse httpResponse = (BasicHttpResponse) httpclient.execute(httppost);
System.out.println("res------"+httpResponse.getStatusLine().toString()+" code "+httpResponse.getStatusLine().getStatusCode());
//Checking response
if(httpResponse!=null){
inputStream = httpResponse.getEntity().getContent();
BufferedReader r = new BufferedReader(new InputStreamReader(inputStream));
StringBuilder total = new StringBuilder();
String line="";
try {
while ((line = r.readLine()) != null) {
total.append(line);
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("line----"+line);
}
在这段代码中,我打印了httpResponse.getStatusLine().toString()打印值,例如 HTTP/1.1 200 OK code 200
但行值变空。
谢谢。