我得到这个例外
基础连接已关闭:发送时发生意外错误。
在我的日志中,它正在随机打破我们的OEM与电子邮件营销系统的集成。(1-4小时不等)
我的网站托管在Windows Server 2008 R2与IIS 7.5.7600。
该网站拥有大量OEM组件和全面的仪表板。除了我们的一个电子邮件营销组件(我们正在使用该组件作为仪表板中的iframe解决方案)外,其他所有内容都可以与网站的所有其他元素配合使用。
它的工作方式是,我发送一个带有所有凭据的HttpWebRequest对象,然后我得到一个网址,我把它放在一个iframe中,它就可以工作了。
但它只工作一段时间(1-4小时),然后从呼叫到
Web请求。获取响应();
我有个例外
基础连接已关闭:发送时发生意外错误。
即使系统尝试从httpWebRequest获取URL,也会失败,出现相同的异常。
让它再次发挥作用的唯一方法是:
我真的用尽了我能想到的所有选择。
明确添加,
>
keep alive=false
keep alive=true
增加了超时时间:
我已将此页面上载到一个非SSL网站,以检查我们生产服务器上的SSL证书是否正在建立连接以删除某些内容。
任何解决方案的方向都是值得赞赏的。
Public Function CreateHttpRequestJson(ByVal url) As String
Try
Dim result As String = String.Empty
Dim httpWebRequest = DirectCast(WebRequest.Create("https://api.xxxxxxxxxxx.com/api/v3/externalsession.json"), HttpWebRequest)
httpWebRequest.ContentType = "text/json"
httpWebRequest.Method = "PUT"
httpWebRequest.ContentType = "application/x-www-form-urlencoded"
httpWebRequest.KeepAlive = False
'ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3
'TODO change the integratorID to the serviceproviders account Id, useremail
Using streamWriter = New StreamWriter(httpWebRequest.GetRequestStream())
Dim json As String = New JavaScriptSerializer().Serialize(New With { _
Key .Email = useremail, _
Key .Chrome = "None", _
Key .Url = url, _
Key .IntegratorID = userIntegratorID, _
Key .ClientID = clientIdGlobal _
})
'TODO move it to the web.config, Following API Key is holonis accounts API Key
SetBasicAuthHeader(httpWebRequest, holonisApiKey, "")
streamWriter.Write(json)
streamWriter.Flush()
streamWriter.Close()
Dim httpResponse = DirectCast(httpWebRequest.GetResponse(), HttpWebResponse)
Using streamReader = New StreamReader(httpResponse.GetResponseStream())
result = streamReader.ReadToEnd()
result = result.Split(New [Char]() {":"})(2)
result = "https:" & result.Substring(0, result.Length - 2)
End Using
End Using
Me.midFrame.Attributes("src") = result
Catch ex As Exception
objLog.WriteLog("Error:" & ex.Message)
If (ex.Message.ToString().Contains("Invalid Email")) Then
'TODO Show message on UI
ElseIf (ex.Message.ToString().Contains("Email Taken")) Then
'TODO Show message on UI
ElseIf (ex.Message.ToString().Contains("Invalid Access Level")) Then
'TODO Show message on UI
ElseIf (ex.Message.ToString().Contains("Unsafe Password")) Then
'TODO Show message on UI
ElseIf (ex.Message.ToString().Contains("Invalid Password")) Then
'TODO Show message on UI
ElseIf (ex.Message.ToString().Contains("Empty Person Name")) Then
'TODO Show message on UI
End If
End Try
End Function
Public Sub SetBasicAuthHeader(ByVal request As WebRequest, ByVal userName As [String], ByVal userPassword As [String])
Dim authInfo As String = Convert.ToString(userName) & ":" & Convert.ToString(userPassword)
authInfo = Convert.ToBase64String(Encoding.[Default].GetBytes(authInfo))
request.Headers("Authorization") = "Basic " & authInfo
End Sub
下面的代码解决了这个问题
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls Or SecurityProtocolType.Ssl3
如果你被困住了。Net 4.0,而目标站点使用的是TLS1.2,则需要以下行<代码>服务点管理器。SecurityProtocol=(SecurityProtocolType)3072
资料来源:TLS 1.2和。NET支持:如何避免连接错误
对我来说,这是tls12:
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
这是我用来调用web API的代码。通过浏览器调用web api工作正常。
所以我正试图用SMTP和AWS向我自己发送电子邮件。我在配置中使用的电子邮件经过验证,因为我仍然在SES中使用沙盒模式。在运行脚本时,我不断收到错误即使我尝试与OpenSSL连接,但它已连接,但显示
我试图连接使用JDBC MySQL驱动程序,但它不会工作。就我目前而言,我已经正确地遵循了每一步,并且MySQL驱动程序有蓝色的复选标记。我用的是Windows7。下面是我对错误的堆栈跟踪: ExecutionException:java.lang.runtimeException:com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:通信
但结果显示相同。有人能帮忙吗? 提前感谢S.K Setia
我试图将我的Spring Boot应用程序连接到PostGresSql数据库。但每次我得到错误。 我的文件如下所示:- ssl服务器。jks文件位于src/main/resources文件夹中。我正在阅读下面的控制台台面:-
我试图用下面的连接字符串连接到SQL服务器,但它给出了这个"错误连接超时过期" 我已尝试telnet,并且它已成功连接。但是,根据代码,即使我尝试指定默认端口,也无法连接。 我有做错什么吗?提前谢谢你。 Telnet结果