猿问

asp.net中,http的post请求的一个疑问

 APIResponse<List<APIResponse>> resp = APIResponse<List<APIResponse>>.Success();

            string Url = "http://xxxx/xxx/xxx.json";

            var httpWebRequest = (HttpWebRequest)WebRequest.Create(Url);

            httpWebRequest.ContentType = "application/json";

            httpWebRequest.Method = "POST";

            string good = "";

            string envName = "";

            try

            {

    using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))//这句话没看明白,streamWriter是post的请求体的内容,

    //但是它只是被new出来的一个对象,和httpWebRequest这个对象没有任何关系,它并不是httpWebRequest的一部分,所以httpWebRequest的请求体还是空的呀。。。为什么这样可以?

          

          问题:
var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream());
这句话没看明白,变量streamWriter是post的请求体的内容,
但是它只是被new出来的一个对象,和httpWebRequest这个对象没有任何关系,它并不是httpWebRequest的一部分,所以httpWebRequest的请求体还是空的呀。。。为什么这样可以?

四季花海
浏览 611回答 2
2回答

弑天下

HttpWebRequest.GetRequestStream 这个方法是获取用于写入请求数据的 Stream 对象,然后你通过实例化StreamWrite 就可以获取到请求的内容写入到默认的缓冲区里面了
随时随地看视频慕课网APP
我要回答