【问题标题】:Add header to Http Header将标头添加到 Http 标头
【发布时间】:2013-02-19 18:11:07
【问题描述】:

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

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

有可能吗?

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

【问题讨论】:

    标签: android http-headers ksoap2


    【解决方案1】:

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

    编辑

    调用HttpTransportSE.call()时可以直接传递额外的headers

    示例:

    .
    .
    .
    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);
    .
    .
    .
    

    【讨论】:

    • 欢迎来到 StackOverflow,请提供更多信息,可能是您答案的来源,因为目前这是一个非常糟糕的答案。
    • 来源是答案 ksoap2 源代码 - github.com/mosabua/ksoap2-android
    【解决方案2】:

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

    HttpTransportSE transport = new HttpTransportSE(url,timeout);
    ServiceConnection conn = transport.getConnection();
    conn.setRequestProperty("Accept-Encoding", "utf-8");
    //and others...
    

    【讨论】:

      猜你喜欢
      • 2012-08-14
      • 2017-10-15
      • 2012-01-04
      • 1970-01-01
      • 1970-01-01
      • 2012-04-23
      相关资源
      最近更新 更多