首页 > 解决方案 > 如何使用 Visual Basic 6 将字节数组作为 json 发送?

问题描述

我有一个 Visual Basic 6 应用程序,它应该将一个文件读入一个字节数组,将它放入一个 json 对象中,并向一个休息 API 发出一个发布请求。除了字节数组部分,我一切正常。当我使用下面的代码时,API 只接收字符串“bytes”,而不是应该看起来像这样“ JVBERi0xLjQKJeLjz9MKCj”的请求的实际内容

Private Function PostDocumentPrint() As String
        'Create http client
        Dim http As Object
        Set http = CreateObject("WinHttp.WinHttprequest.5.1")
        url = "XXX"
        http.Open "Post", url, False
        
        'Set request parameters
        http.SetRequestHeader "charset", "UTF-8"
        http.SetTimeouts 500, 500, 500, 500
     
        
        ' Read file into byte array
        Dim fileNum As Integer
        Dim bytes() As Byte
        fileNum = FreeFile
        Open "FileToSend.pdf" For Binary As fileNum
        ReDim bytes(LOF(fileNum) - 1)
        Get fileNum, , bytes
        Close fileNum

        ' Send the request
        Dim jsonStringPostBody As String
        jsonStringPostBody = " {""fileData"": "" " + bytes + """} "   
        http.Send jsonStringPostBody
End Function

我相信我需要以某种方式将字节数组转换为字符串。例如我试过这个:

Dim s As String
s = StrConv(bytes, vbUnicode)
MsgBox s

但它看起来不正确。

标签: jsonvb6

解决方案


推荐阅读