1

我用有效的 url 和有效的 APIkey(用户名)调用 PostJsontext。在以下行中发布 jsontext 会导致“参数无效”消息:.send(Jsontext)

使用相同的例程: .Open("GET", Xurlget, False, StrUsername, "") .send() 会产生有效的 .responsetext。

不知道去哪里或做什么才能发布所有数据。为什么该行会产生错误以及如何修复?

Public Sub PostJsonText(ByVal xurl As String, ByVal Xurlget As String, ByVal StrUsername As String, ByVal StrPassword As String, ByRef xJsonText As String, ByRef OkAuthenticateCredentials As Boolean, ByRef Credstatus As Int32)

    Dim Jsonservice As Object = CreateObject("MSXML2.XMLHTTP.6.0")
    Dim Jsontext As String


    jsontext =
        "{""idvatgroup"":3996,""idsupplier"":111,""productcode"":""tester2"",""name"":""tester2"",""price"":22,""fixedstockprice"":22,""productcode_supplier"":""22""}"


    With Jsonservice
        .Open("POST", Xurlget, False, StrUsername, "")

        .setRequestHeader("Content-Type", "application/json")
        .setRequestHeader("Accept", "application/json")

       .setRequestHeader("Authorization", "Basic " & StrUsername)
       .send(jsontext)

        Credstatus = .Status
        If .Status <> 401 Then
            jsontext = .Responsetext
            OkAuthenticateCredentials = True
        Else
            OkAuthenticateCredentials = False
            JsonText = "Error: Invalid Credentials!"
        End If
    End With
    Jsonservice = Nothing
4

0 回答 0