Как сделать POST и GET в VBscript?

Я новичок в VBscript и ищу помощь, чтобы выполнить POST для API и передать ему строку JSON, содержащую идентификатор, пароль и область видимости, а затем получить ответ и проанализировать его. Вот звонок, который мне нужно сделать:

POST https://integrations.ezyvet.com/call/getAccessToken {"partner_id": " id8888 "," client_id ":" id12345 "," client_secret ":" secret12345 "," grant_type ":" client_credentials "," scope ":" чтение-диагностический результат, чтение-диагностический результат, запрос чтения-диагностики, запись-диагностический результат, запись- диагностический результат "}

Вот мой код:

Dim fso, outFile
Set fso = CreateObject("Scripting.FileSystemObject")
Set outFile = fso.CreateTextFile("c:\temp\JSONoutput.txt", True)
set json = CreateObject("Chilkat_9_5_0.JsonObject")
jsonStr = "{""partner_id"": ""id8888"", ""client_id"": ""id12345"", ""client_secret"": ""secret12345"", ""grant_type"": ""client_credentials"", ""scope"": ""read-diagnosticresult,read-diagnosticresultitem, read-diagnosticrequest,write-diagnosticresult,write-diagnosticresultitem""}"

success = json.Load(jsonStr)

If (success <> 1) Then
    outFile.WriteLine(json.LastErrorText)
    WScript.Quit
End If
set http = CreateObject("Chilkat_9_5_0.Http")

Мне нужно сделать POST здесь и получить ответ, но я не знаю, как это сделать. Пожалуйста помоги.

Бесконечно благодарен.


person Ahmed    schedule 11.10.2018    source источник


Ответы (1)


Привет и добро пожаловать на переполнение стека! Вы отметили chilkat в своем вопросе, однако вы не обратились к нему где-либо в теле или его названии, поэтому я не был уверен, указывает ли ответ на это или нет, поэтому я постараюсь сделать и то, и другое.

без чилката

Вы можете сделать это в чистом vbs с помощью ajax, краткий ответ будет

Dim request
Set request = CreateObject("MSXML2.XMLHTTP")
request.open "GET", "http://www.example.com", False '(1)
request.send infoToSend '(2)
'(3)
  1. Здесь вы устанавливаете "POST" или "GET".
  2. infoToSend содержит информационные данные в формате "ключ = значение & ключ2 ..."
  3. request.responseText здесь содержит ответ сервера в виде текста, при необходимости проанализируйте его как json. Вы можете найти информацию здесь.

с чилкатом

Если вы все еще хотите использовать chilkat, основная документация объекта http находится здесь, здесь есть все необходимое. Если вам нужен пример, то здесь я нашел два: отправка запроса: https://www.example-code.com/vbscript/http_xmlHttpRequestVerbs.asp отправка json: https://www.example-code.com/vbscript/http_put_json.asp

Я не буду вставлять его сюда, потому что он слишком длинный, но вас больше всего интересует то, что вы:

set request = CreateObject("Chilkat_9_5_0.HttpRequest") '(1)
request.HttpVerb = "PUT" '(2)
success = request.LoadBodyFromString(xmlStr,"utf-8") '(3)
Set response = http.SynchronousRequest(endpointDomain,endpointPort,endpointSsl,request)' (4)
  1. вам нужно создать httpRequest
  2. вы устанавливаете здесь или получаете или публикуете 3. вы загружаете сюда свой контент, это ваш json или то, что вы отправите, но отформатировано соответствующим образом
  3. здесь у вас есть ответ, содержащий объект HttpResponse с результатом

документация по HttpResponse и HttpRequest

person Community    schedule 12.10.2018