本地主机拒绝连接

时间:2019-06-13 11:00:39

标签: c# ssl asp.net-web-api ssl-certificate network-security

我有一个Web api项目,我从属性中启用了ssl并在Trusted Root Certification Authority中下载了证书。在这个项目中,我有一个将http重定向到https的类。我有一个调用我的http api的客户端使用ngrok,此请求将重定向到ssl端口。我已将启用ssl时在计算机上下载的证书粘贴到客户端计算机上的Trusted Root Certification Authority,但客户端无法访问api,说本地主机拒绝连接并显示以下错误:

  

System.AggregateException:发生一个或多个错误。 --->

     

System.Net.Http.HttpRequestException:发送请求时发生错误。 --->

     

System.Net.WebException:无法连接到远程服务器--->

     

System.Net.Sockets.SocketException:无法建立连接,因为目标计算机主动拒绝它127.0.0.1:44343

     

在System.Net.Sockets.Socket.InternalEndConnect(IAsyncResult asyncResult)

     

在System.Net.Sockets.Socket.EndConnect(IAsyncResult asyncResult)

     

在System.Net.ServicePoint.ConnectSocketInternal上(布尔型connectFailure,Socket s4,Socket s6,Socket&套接字,IPAddress&地址,ConnectSocketState状态,IAsyncResult asyncResult,Exception异常)

     

---内部异常堆栈跟踪结束---

     

在System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)

     

在System.Net.Http.HttpClientHandler.GetResponseCallback(IAsyncResult   阿拉特)

我使用以下代码调用了我的第一个api:

HttpClient client = new HttpClient();


client.BaseAddress = new Uri("http://localhost:44343/");


HttpResponseMessage response = client.GetAsync("http://ccb7fe34.ngrok.io/api/Server").Result;

if (response.StatusCode == System.Net.HttpStatusCode.OK)
{
     using (HttpContent content = response.Content)
     {
           Task<string> result = content.ReadAsStringAsync();
           res = result.Result;
           System.Diagnostics.Debug.Write(res);
     }
     var des = (ForVersion)JsonConvert.DeserializeObject(res, typeof(ForVersion));
     string updated_version = des.version;
     string current_version = Assembly.GetExecutingAssembly().GetName().Version.ToString();
     if (current_version != updated_version)
     {
          UpdateAvailable f = new UpdateAvailable();
          f.ShowDialog();
     }
 }

0 个答案:

没有答案
相关问题