zoukankan      html  css  js  c++  java
  • 如何对HttpWebRequest和HttpWebRsponse异步调用?

    public void Post(string url)
     HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
                req.Method = "POST";
                req.KeepAlive = true;
                req.Timeout = 300000;
                req.ContentType = "application/x-www-form-urlencoded;charset=utf-8";
                postData = Encoding.UTF8.GetBytes(PostData(param));
     req.BeginGetRequestStream(new AsyncCallback(RequestStreamCallBack), req);
    
      }
       public static void RequestStreamCallBack(IAsyncResult result)
            {
                HttpWebRequest request = (HttpWebRequest)result.AsyncState;
                Stream reqStream = request.EndGetRequestStream(result);
                reqStream.Write(postData, 0, postData.Length);
                reqStream.Close();
                //如何让程序在此处步不回到界面,调用完下面的对流的读取后,在返回界面?谢谢高手指点!
                request.BeginGetResponse(new AsyncCallback(ResponseCallBack), request);
            }
            public static void ResponseCallBack(IAsyncResult result)
            {
                HttpWebRequest req = (HttpWebRequest)result.AsyncState;
                HttpWebResponse response = (HttpWebResponse)req.EndGetResponse(result);
     
                using (Stream sw = response.GetResponseStream())
                {
                    using (StreamReader reader = new StreamReader(sw))
                    {
                        xmls = reader.ReadToEnd();
                    }
                }
                if (response != null) response.Close();
     
            }
  • 相关阅读:
    ORACLE学习记录
    Oracle拆分字符串函数
    spring3.2.5学习(二)——IoC注解配置
    spring3.2.5学习(一)——spring环境配置以及IOC简介
    使用SQL脚本将表字段生成实体类属性VO
    JAVA多线程笔试题
    初步接触LVS
    linux中shell,awk,sed截取字符串方法总结
    调用sort段错误问题
    开源软件许可协议简介
  • 原文地址:https://www.cnblogs.com/SanMaoSpace/p/2118133.html
Copyright © 2011-2022 走看看