【问题标题】:ksoap timeout behind proxy in androidandroid中代理后面的ksoap超时
【发布时间】:2011-02-03 08:38:00
【问题描述】:

我尝试了http://www.helloandroid.com/tutorials/using-ksoap2-android-and-parsing-output-data 中的示例以从 wsdl 服务获取请求和响应。当我尝试无代理时,它工作正常。但是当我在代理后面工作时,我得到 “操作超时:请求时间失败:java.net.SocketException” 有没有办法将代理设置为 SoapObject 或 Soap信封?

【问题讨论】:

    标签: android proxy socketexception ksoap envelope


    【解决方案1】:

    Ksoap 不能在代理后面工作。为了使它工作.. 从 sourceforge 下载 HttpTransportSE.java 和 ServiceConnectionSE.java。

    使用 HttpTransportSE 和 ServiceConnectionSE 创建一个包。

    在 ServiceConnectionSE 构造函数中:

     String myProxy=android.net.Proxy.getDefaultHost() ;
                int myPort=android.net.Proxy.getDefaultPort();
    
                if(myProxy!=null){
                    Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress(myProxy, myPort));
                    connection = (HttpURLConnection) new URL(url).openConnection(proxy);
                }
                else
                {
                    connection = (HttpURLConnection) new URL(url).openConnection();
                }
    

    现在无论我们调用 HttpTransportSE.call() 方法,请确保它指向您自己的包含这两个文件的包。

    【讨论】:

    • 你能解释一下如何做到这一点,就像我下载文件并将这些文件复制到一个新包中一样,但是它们给出了错误。你也可以给这些文件的链接。
    • @Waseem 最新版本的 ksoap 本身已经实现了代理。所以尝试下载最新的 ksoap 库。
    【解决方案2】:

      大家好,最新版本的 KSOAP2.6.5 [已测试并验证] 已修复代理身份验证问题。 HTTPTransportSE 构造函数现在接受 java.net.Proxy 实例作为参数以及 URL。该方法将像
                HttpTransportSE httpTransport=new HttpTransportSE(proxy,URL);
      如果您的代理已配置并且需要身份验证,则使用 Authenticator 类来设置您的代理凭据并取得成功。 HTH,如果不给我回信

    【讨论】:

      【解决方案3】:

      据我所知,您必须自己在 android 操作系统设置中设置代理,它才能正常工作。

      【讨论】:

      • 不,我已经这样做了..它不起作用..感谢您的回答
      【解决方案4】:

      用这个替换..

      //Timeout in milliseconds
      
      int timeout=60000;
      AndroidHttpTransport androidHttpTransport=new AndroidHttpTransport(url, timeout);
      

      【讨论】:

        猜你喜欢
        • 2011-07-26
        • 1970-01-01
        • 2014-04-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-03-23
        相关资源
        最近更新 更多