我是VBscript的新手,正在寻求一些帮助,以便对API进行POST,并将包含ID,密码和作用域的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并获得答复,但不确定如何做。请帮忙。
谢谢。
答案 0 :(得分:1)
嗨,欢迎堆栈溢出!
您已在问题中标记了chilkat
,但是您尚未在身体的任何部位或标题中解决它,所以我不确定是否要回答这个问题,因此我将尝试同时解决这两个问题。
您可以使用ajax在纯vbs中执行此操作,简单的答案是
Dim request
Set request = CreateObject("MSXML2.XMLHTTP")
request.open "GET", "http://www.example.com", False '(1)
request.send infoToSend '(2)
'(3)
如果您仍然想使用chilkat,则http对象的主要文档是here,这是您需要的一切。如果您需要一个示例,在这里我发现了两个: 发出请求: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)