1

我正在将 ksoap2 用于 android 项目。但是服务器代码(不能更改)是旧的,需要在 HTTP 标头的标头内发送一些属性。

服务器使用soap,所以我决定将ksoap2 用于android,但我找不到任何示例如何设置ksoap2 请求的http 标头(不在soap 信封内,而是在httpheader 内)。

可能吗?

如果可能的话,谁能给我举个例子?

4

2 回答 2

1

HTTP 标头可以在 org.ksoap2.transport.call(String, SoapEnvelope, List, File) 方法中修改。

编辑

您可以在调用时直接传递额外的标头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);
.
.
.
于 2013-02-20T12:00:14.540 回答
0

您可以检索连接对象并在那里添加标头。

HttpTransportSE transport = new HttpTransportSE(url,timeout);
ServiceConnection conn = transport.getConnection();
conn.setRequestProperty("Accept-Encoding", "utf-8");
//and others...
于 2013-04-23T08:13:22.770 回答