我正在使用ksoap2 for android项目。但是服务器代码(无法更改)很旧,需要在HTTP标头的头部内发送一些属性。
服务器使用soap所以我决定使用ksoap2 for android但是我找不到任何示例如何设置ksoap2请求的http头(不在soap信封内但在httpheader内)。
有可能吗?
如果有可能,有人可以给我一个例子吗?
答案 0 :(得分:1)
可以在org.ksoap2.transport.call(String,SoapEnvelope,List,File)方法中修改HTTP标头。
修改强>
您可以在调用HttpTransportSE.call()
示例:
.
.
.
List<HeaderProperty> headers;
headers.add(new HeaderProperty("Content-Type", "utf8"));
headers.add(new HeaderProperty("Accept", "text/html"));
HttpTransportSE httpTransport = new HttpTransportSE(_soapAddress);
httpTransport.call(soapAction, envelope, headers);
.
.
.
答案 1 :(得分:0)
您可以检索连接对象并在那里添加标题。
HttpTransportSE transport = new HttpTransportSE(url,timeout);
ServiceConnection conn = transport.getConnection();
conn.setRequestProperty("Accept-Encoding", "utf-8");
//and others...