有効な 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