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

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

0 голосов
/ 12 октября 2018

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

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 здесь и получить ответ, и я не уверен, как. Пожалуйста, помогите.

Спасибо миллион.

1 Ответ

0 голосов
/ 12 октября 2018

Привет и добро пожаловать в стек переполнения!Вы отметили 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 содержит информационные данные, отформатированные как« key = value & key2 ... »
  3. request.responseText здесь содержит ответ сервера в виде текста, проанализируйте его как json, если вам нужно. Вы можете найтиинформация здесь .

с chilkat

Если вы все еще хотите использовать 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. , установленный здесь, eather get или post 3. вы загружаете здесь свой контент, это ваш json или то, что вы будете отправлять, но отформатирован соответствующим образом
  3. здесь у вас есть ответ, содержащий HttpResponseобъект с результатом

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

...