c# - 发送 HTTPS 获取请求 C# 时出错
问题描述
我有此代码可将 Http Get Request 发送到 https URL,但出现此错误:
无法从传输连接读取数据:现有连接被远程主机强行关闭。
var webRequest = (HttpWebRequest)WebRequest.Create(url);
webRequest.Timeout = timeout;//timeout 100 sec by default
using (var httpWebResponse = (HttpWebResponse)webRequest.GetResponse())
using (var stream = httpWebResponse.GetResponseStream())
using (var streamReader = new StreamReader(stream))
{
var response = streamReader.ReadToEnd();
return response;
}
该 URL 在浏览器和邮递员中运行良好。
解决方案
尝试将此代码添加到您的WebRequest.Create(url)
;
如果您使用的是 .Net Framework 4.0
System.Net.ServicePointManager.SecurityProtocol =SecurityProtocolType.Tls | (SecurityProtocolType)768 | (SecurityProtocolType)3072;
如果您使用的是 .Net Framework 4.5 及更高版本
System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12;
推荐阅读
- c - 从文件中扫描带有空格的字符串,同时在同一行中扫描其前后的数字
- python - 我的服务器文件安全吗?我不断收到引用未知域的奇怪错误
- c++ - c++程序在代码块IDE中不起作用
- mysql - MySQL - 在 GROUP BY 之后包含更多条件的语法
- python - 在带有 Flask 的 Python 中使用 mysql-connector 时遇到问题
- pandas - 如何在已转换为数据框中索引的列中进行搜索?
- .net - 在 VB.NET 中运行 Powershell 脚本时出错
- python - 使用属性合并 2 个数据框
- python - 将函数应用于列表字典的所有输入
- javascript - 使用 @react-google-maps/api 时出现 CORS 错误