C# 发起网络请求
public class CWebRequest
{
//从URL读取内容
//流程:创建网络请求对象→获取响应→获取响应流→从响应留读取字符串
//流程:WebRequest→WebResponse→Stream→StreamReader→ReadToEnd
public string GetResponseContent(string url)
{
WebRequest request = WebRequest.Create(url);
WebResponse response = request.GetResponse();
Stream stream = response.GetResponseStream();
StreamReader reader = new StreamReader(stream, Encoding.UTF8);
string res = reader.ReadToEnd();
reader.Dispose();
stream.Dispose();
return res;
}
public string GetHttpResponseContent(string url)
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.ContentType = "text/html;charset=UTF-8";
request.UserAgent = null;
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Stream stream = response.GetResponseStream();
StreamReader reader = new StreamReader(stream, Encoding.UTF8);
string content = reader.ReadToEnd();
reader.Dispose();
stream.Dispose();
return content;
}
//发起POST请求,并获取返回字符串
//流程:创建请求→配置请求→获取请求流→Json写入请求流→获取响应→获取响应流→构建流读取器→读取相应字符串
//流程:HttpWebRequest→(Method/ContentType)→GetRequestStream→Write→GetResponse→GetResponseStream→StreamReader→ReadToEnd
//json转字节数组并获取长度
public string PostJson(string url, string json)
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Method = "POST";
request.ContentType = "application/json;charset=UTF-8";
byte[] bytes = Encoding.UTF8.GetBytes(json);
int len = bytes.Length;
Stream requestStream = request.GetRequestStream();
requestStream.Write(bytes, 0, len);
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Stream responseStream = response.GetResponseStream();
StreamReader responseReader = new StreamReader(responseStream, Encoding.UTF8);
string responseContent = responseReader.ReadToEnd();
responseReader.Dispose();
responseStream.Dispose();
requestStream.Dispose();
return responseContent;
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律