【发布时间】:2018-12-20 17:11:20
【问题描述】:
APIGee 正在将请求迁移到 TLS 1.2
操作系统:Windows Server 2003 !!!
我有一个用 vb6 开发的旧应用程序,但由于这次新迁移而停止工作
这是我的代码
Public Function GetCustomerName(ByVal pCPFCliente As String) As String
Dim xmlhttp As MSXML2.ServerXMLHTTP
Set xmlhttp = New MSXML2.ServerXMLHTTP
xmlhttp.Open "GET", const_URL & "/customer=" & pCPFCliente & "&identification.type=CPF", False
xmlhttp.setRequestHeader "Content-Type", "application/json"
xmlhttp.setRequestHeader "Authorization", const_TOKEN
xmlhttp.send
Dim objJson As Object
Set objJson = JSON.parse(xmlhttp.responseText)
Dim lacoRecord As Integer
Dim customerName As String
customerName = ""
If xmlhttp.Status = 200 Then
For lacoRecord = 1 To objJson.Item("records").Count
customerName = objJson.Item("records")(lacoRecord).Item("name")
Next
ElseIf xmlhttp.Status = 404 Then
If objJson.Item("errorCode") = 20023 Then
Call WriteLogManual("CONSULTA CPF", "Cliente não encontrado! " & pCPFCliente, pPedido, 0, 0, 0, 0, 0)
Else
Call WriteLogManual("CONSULTA CPF", "Erro ao consultar CPF " & pCPFCliente & " - " & xmlhttp.responseText, pPedido, 0, 0, 0, 0, 0)
End If
ElseIf xmlhttp.Status = 503 Then
MsgBox "Ocorreu um erro 503 ao buscar o CPF do Cliente na API. " & Chr(13) & xmlhttp.responseText
Call WriteLogManual("CONSULTA CPF", "Erro ao consultar saldo na ApiGee - " & xmlhttp.responseText, pPedido, 0, 0, 0, 0, 0)
Else
MsgBox "Ocorreu um erro ao buscar o saldo do Cliente na API. " & Chr(13) & xmlhttp.responseText
Call WriteLogManual("CONSULTA CPF", "Erro ao consultar saldo na ApiGee - " & xmlhttp.responseText, pPedido, 0, 0, 0, 0, 0)
End If
GetCustomerName = customerName
End Function
【问题讨论】:
-
您使用的对象是一个 WinHttp 包装器。在任何情况下,要通过 WinHttp 使用 TLS 1.2,您必须在 Windows 10 上,否则已安装更新,然后通过注册表设置启用较新的密码。这不是编程问题,而是系统管理问题,与 VB6 无关。
-
@Bob77 我的生产机器是 Windows Server 2003
-
Server 2003 已生命终结,并且已经存在好几年了!它不再获得任何更新...甚至没有关键的安全补丁,甚至是已知漏洞。仍然使用它是危险和不负责任的。更新到受支持的服务器是这里的第一要务。
-
@Joel Coehoom 这里很少有人不知道 MS 不再支持 2003。
-
你可以使用cHttRequest源兼容的替换类。使用 VB6+thunks TLS 后端,它支持从 NT 4.0 开始的每个 Windows 上的 TLS 1.3 和 TLS 1.2
标签: rest vb6 tls1.2 windows-server-2003 apigee