こんにちは私はAPIを呼び出し、winhttpリクエストとGETメソッドを使用しています。私はsendメソッドでjsonスタイルのパラメータを渡していますが、受け入れられません。私はエラーメッセージで終わります:VBA RESTful API GETメソッドの問題
{"code": "INS03"、 "description": "イベントIDが必要です"、 "requestId": "_ 181603230829162847306080"、 "data":{}、 "validationErrors":私が実際にイベントIDパラメータを渡していますので、以下のように、奇妙なようでヌル}
:
inventory_URL = "https://api.stubhub.com/search/inventory/v1"
Dim oRequest As WinHttp.WinHttpRequest
Dim sResult As String
Set oRequest = New WinHttp.WinHttpRequest
With oRequest
.Open "GET", inventory_URL, True
.setRequestHeader "Authorization", "Bearer " & access_token
.setRequestHeader "Accept", "application/json"
.setRequestHeader "Accept-Encoding", "application/json"
.send ("{""eventid"":""9445148""}")
.waitForResponse
sResult = .responseText
Debug.Print sResult
sResult = oRequest.Status
Debug.Print sResult
End With
は私のコードですべての問題はありますか?
はGET
リクエストクエリ文字列の場合は、事前に
ヴァディム
私はそれが何も変わるとは思わないが、 '.send(" {"" eventid "":9445148} ")'のかっこは削除する必要があります。 「これは混乱しています。どうして括弧を使うのはなぜですか?](http://stackoverflow.com/documentation/vba/1179/procedure-calls/3818/this-is-confusing-why-not-just-always-use-parentheses#t = 201608231909481978335)をDocs.SOに掲載しています。なぜあなたはそれを習慣にしたら後部であなたを噛んでしまうのでしょうか? –
'.send"を試しましたか?9445148 "'? APIのドキュメントでURLが期待していることは何ですか? –
私は括弧について同意します。純粋な.send "944518"もうまくいくかもしれませんが、私はそれを正確にはしませんでしたが、非常に一番上のinventory_URL文字列に直接パラメータを挿入することで回避できます。私はこのAPIが安らかな呼び出しをサポートしていると思いますので、今のところそれに固執していきます。可能なことは.send "...."は別の角度からの同じテクニックです。本当にありがたいヒントのおかげで、私はかっこの習慣を詳しく見守ります! –