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的请求体还是空的呀。。。为什么这样可以?
{
string json = interfacejson.Replace("%servicename%", servicename);
streamWriter.Write(json);
streamWriter.Flush();
streamWriter.Close();
#region
var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse();
问题:
var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream());
这句话没看明白,变量streamWriter是post的请求体的内容,
但是它只是被new出来的一个对象,和httpWebRequest这个对象没有任何关系,它并不是httpWebRequest的一部分,所以httpWebRequest的请求体还是空的呀。。。为什么这样可以?
你的代码就是简单的读网上的JSON,然后写到本地。
代码:var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream());就是把返回的值放到StreamWriter里
对于你的疑问,我认为你应该了解引用类型和值类型的区别,一个简单的例子:
httpWebRequest.GetRequestStream()方法和上面rolf.GetClass()类似的。
希望对你有帮助。