我用有效的 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