httpwebrequest BeginGetResponse回调60秒内触发



我正在尝试使用webservice获取一些数据到WP7设备。

我使用HttpWebRequest对象从我的服务中获取数据…在WP7模拟器上一切都工作得很好,但是当我尝试在WP7设备上运行应用程序时,BeginGetResponse回调在1分钟/60秒后触发,响应状态为"未找到"。

但是如果服务在60秒之前返回数据,那么它也可以在WP7设备上工作....

我已经创建了一个示例web服务与一个示例方法,其中有线程。睡眠两分钟它可以在WP7模拟器上工作,但不能在WP7设备上工作....

有人以前遇到过这样的问题吗?

请帮帮我。

谢谢,SK

我使用下面的代码来点击服务…同样的代码在WP7模拟器上工作,但在WP7设备上…

        HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
        request.ContentType = contentType;
        request.Method = method;
        request.Headers["SOAPAction"] = @"http://tempuri.org/HelloWorldT";
        request.Headers["KeepAlive"] = "true";
        var res = request.BeginGetRequestStream(
           new AsyncCallback((streamResult) =>
           {
               soapRequestEnvelope = @"<s:Envelope xmlns:s='http://schemas.xmlsoap.org/soap/envelope/'><s:Body><HelloWorldT xmlns='http://tempuri.org/' xmlns:a='http://schemas.datacontract.org/2004/07/WindowsFormsApplication1.ServiceReference1' xmlns:i='http://www.w3.org/2001/XMLSchema-instance'/></s:Body></s:Envelope>";
               byte[] requestBytes = Encoding.UTF8.GetBytes(soapRequestEnvelope);
               try
               {
                   using (Stream requestStream = request.EndGetRequestStream(streamResult))
                   {
                       requestStream.Write(requestBytes, 0, Encoding.UTF8.GetByteCount(soapRequestEnvelope));
                   }
               }
               catch (Exception e)
               {
               }

               request.BeginGetResponse(new AsyncCallback((ar) =>
               {
                   try
                   {
                       HttpWebRequest Request = (HttpWebRequest)ar.AsyncState;
                       if (Request != null)
                       {
                           using (HttpWebResponse webResponse = (HttpWebResponse)Request.EndGetResponse(ar))
                           {
                               StreamReader reader = new StreamReader(webResponse.GetResponseStream());
                               string text = reader.ReadToEnd();
                           }
                       }
                   }
                   catch (Exception ex)
                   {
                   }
               }), request);

           }), request);

相关内容

  • 没有找到相关文章

最新更新