1

I am sending HTTP request. I need to save the HTTP response to that request.

This is the request URL : http://notify.test.com/gateway.do?service=notify_verify&partner=2088&notify_id=abcdefghijklmnopqrst

Code I tried is below:

HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://notify.test.com/gateway.do?service=notify_verify&partner=2088&notify_id=abcdefghijklmnopqrst");
        request.Proxy = WebProxy.GetDefaultProxy();
        request.Proxy.Credentials = CredentialCache.DefaultCredentials;
        HttpWebResponse response = (HttpWebResponse)request.GetResponse();
        Stream resStream = response.GetResponseStream();

The response will be True or False. how can I save that?

4

3 回答 3

2

如果您的要求很简单,WebClient那么还有很长的路要走:

string result;
using(var client = new WebClient()) {
    client.Proxy = ...
    result = client.DownloadString(uri);
}

另见:DownloadData等。

于 2013-04-23T11:21:14.053 回答
1
using(var resStream = response.GetResponseStream())
using(var reader = new StreamReader(resStream))
{
    var responseText = reader.ReadToEnd();
}
于 2013-04-23T11:31:52.457 回答
1

System.IO.Stream你从那里获得一个GetResponseStream()Stream提供Read你可以阅读的方法

using(Stream resStream = response.GetResponseStream()){ //release Stream after use
    if(resStream.CanRead){
        byte[] buffer = new byte[resStream.Length]; // or whatever
        if(resStream.Read(buffer, 0, resStream.Length) == 0) 
        {
            // end of Stream
        }
        else{
             //data received, work on buffer
        }
    }
}

这里System.IO.Stream。_

于 2013-04-23T11:21:45.397 回答