使用 vb 6.0 建立与服务器的 https 连接

Posted

技术标签:

【中文标题】使用 vb 6.0 建立与服务器的 https 连接【英文标题】:Establishing an https connection to server using vb 6.0 【发布时间】:2014-03-25 13:47:27 【问题描述】:

有没有人可以指出我正确的方向。我必须通过 Visual Basic 6.0 连接到 https url 并将 JSON 作为事务发布。 JSON 类已完成,但我不知道如何建立此连接。我一直在网上做研究,但一无所获。不,这不是家庭作业。多年来一直在应用程序方面愉快地开发,现在扩展到新的视野。 如果有人能提供的话,我真的需要看一个基本的例子。任何帮助表示赞赏。

Public Function OpenPostHttpRequest() As Boolean
    Dim bReturn As Boolean
    bReturn = False
    If Not (m_sUrl = "") Then
        On Error GoTo ErrorHandler
        m_HttpRequest.Open "Post", m_sUrl & m_sEAuthentificationValue & "/devices/data" & "?authentification_token=" & m_sEAuthentificationValue & "auth=" & m_sEAuthValue, False
        m_HttpRequest.SetRequestHeader "Content-Type", "text/JSON; charset = utf-8"
        m_HttpRequest.Send m_sPost
    Else
        bReturn = False
    End If
    OpenPostHttpRequest = bReturn
    Exit Function

ErrorHandler:
    Dim E As ErrObject: Set E = Err

    OpenPostHttpRequest = False
    m_HttpRequest.Abort
End Function

我从 PostMan 剪切并粘贴了 url,而 Json 在 Postman 中工作。多谢你们。这正在变成一种学习体验

【问题讨论】:

this 文章可能对您有所帮助。 看这里:***.com/questions/3516119/… 你知道这对于 json 会有什么变化吗? 【参考方案1】:

我们没有创建一个新类来处理事务,而是直接使用 WinHttpRequest。顺利地离开了。它很好地处理了到 https 的转换。

Private Sub cmdSend_Click()
Dim Http As WinHttp.WinHttpRequest
Dim sUrl As String
Dim sResponse As String

On Error GoTo ErrorHandler
    Set Http = New WinHttp.WinHttpRequest
    sUrl = "https://sandbox.appcard.com/v2/<apiKey>/devices/data?"
    sUrl = sUrl & "authentication_token=<apiKey>&auth=<auth>"
    Http.Open "POST", sUrl, False
    Http.SetRequestHeader "Content-Type", "application/x-www-form-urlencoded"

    Http.Send (Text1.Text)
    m_edtUrlResponse.Text = Http.ResponseText
    Set Http = Nothing
    Exit Sub
ErrorHandler:
    Dim E As ErrObject: Set E = Err

End Sub

【讨论】:

其他需要发布到 AppCard 的人应该能够使用相同的方法

以上是关于使用 vb 6.0 建立与服务器的 https 连接的主要内容,如果未能解决你的问题,请参考以下文章

VB 6.0 ActiveX 控件异常处理和清理

Visual Basic 6.0(VB6.0)详细安装过程

使用 WinInet VB.net 测试与 FTP 服务器的连接

vc++6.0与opencv怎么建立工程? 希望有详细的步骤,谢谢了!!!!!!

DBEngine 变量未在 vb 6.0 中定义

VB6 连接到 WCF