zoukankan      html  css  js  c++  java
  • 下面的代码示例使用 BeginGetRequestStream 方法对流实例发出异步请求。

           private void ppkie()
            {
                
    int time1, time2;
                time1 
    = Environment.TickCount;

                textBox1.Text 
    = "";
                label1.Text 
    = "";
                
    // Create a new HttpWebRequest object.
                HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://www.contoso.com/example.aspx");

                
    // Set the ContentType property. 
                request.ContentType = "application/x-www-form-urlencoded";
                
    // Set the Method property to 'POST' to post data to the URI.
                request.Method = "POST";
                
    // Start the asynchronous operation.    
                request.BeginGetRequestStream(new AsyncCallback(RequestCallBack), request);

                
    // Keep the main thread from continuing while the asynchronous
                
    // operation completes. A real world application
                
    // could do something useful such as updating its user interface. 
                allDone.WaitOne();

                
    // Get the response.
                HttpWebResponse response = (HttpWebResponse)request.GetResponse();
                Stream streamResponse 
    = response.GetResponseStream();
                StreamReader streamRead 
    = new StreamReader(streamResponse);
                
    string responseString = streamRead.ReadToEnd();
                
    //Console.WriteLine(responseString);
                this.textBox1.Text = responseString;
                
    // Close the stream object.
                streamResponse.Close();
                streamRead.Close();

                
    // Release the HttpWebResponse.
                response.Close();

                time2 
    = Environment.TickCount - time1;
                label1.Text 
    = time2.ToString();
            }


            
    private static void RequestCallBack(IAsyncResult asynchronousResult)
            {
                HttpWebRequest request 
    = (HttpWebRequest)asynchronousResult.AsyncState;
                
    // End the operation.
                Stream postStream = request.EndGetRequestStream(asynchronousResult);
                
    //Console.WriteLine("Please enter the input data to be posted:");
                string postData = "Please enter the input data to be posted:";

                
    // Convert the string into a byte array.
                byte[] byteArray = new byte[256]; 
                
    // Write to the request stream.
                postStream.Write(byteArray, 0, postData.Length);
                postStream.Close();
                allDone.Set();
            }

  • 相关阅读:
    线性dp打鼹鼠
    区间dp(能量项链)
    留言板
    友链
    CodeForces 1270I Xor on Figures
    agc020_d Min Max Repetition
    Codeforces 1270G Subset with Zero Sum
    CodeForecs 1270E Divide Points
    MybatisPlus学习笔记10:公共字段自动填充
    MybatisPlus学习笔记9:自定义全局操作
  • 原文地址:https://www.cnblogs.com/Fooo/p/1326305.html
Copyright © 2011-2022 走看看