项目中需要请求其他平台接口,所以先控制台中,尝试了几种不同的方式,都是可以正常请求的,但是放到项目的C#插件中,无一例外,都是报错:发生一个或多个错误。
经过排查,个人觉得是,GET请求地址,转义问题。四处查阅了,一些相同的请求方式,最终,大获成功。
起初用的httpClient,后来改用HttpWebRequest。
报错代码示例:
string address = ""; 请求地址
using (var client = new HttpClient()) { //请求结果 string result = client.GetAsync(address).Result.Content.ReadAsStringAsync().Result;
Console.WriteLine(result);
}
最终解决问题,代码示例: System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12; //加上这一句 解决“请求被中止: 未能创建 SSL/TLS 安全通道”的问题
string serviceAddress = "";请求地址 HttpWebRequest request = (HttpWebRequest)WebRequest.Create(serviceAddress); request.Method = "GET"; request.ContentType = "text/html;charset=UTF-8"; HttpWebResponse response = (HttpWebResponse)request.GetResponse(); Stream myResponseStream = response.GetResponseStream(); StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.UTF8); string retString = myStreamReader.ReadToEnd(); myStreamReader.Close(); myResponseStream.Close();
|
请发表评论