[英]How to POST JSON Data via HTTP API using VBScript?
尝试将 JSON POST 请求发送到 HTTP API(PushBullet)。 但面临代码中的错误。 任何帮助表示赞赏。 参考文档发送推送通知
Dim objXmlHttpMain , URL
strJSONToSend = {"type": "note", "title": "Alert", "body": "Lorem Ipsum Lorem Ipsum Lorem Ipsum."}
URL="https://api.pushbullet.com/v2/pushes"
Set objXmlHttpMain = CreateObject("Msxml2.ServerXMLHTTP")
on error resume next
objXmlHttpMain.open "POST",URL, False
objXmlHttpMain.setRequestHeader "Authorization", "Bearer <api secret id>"
objXmlHttpMain.setRequestHeader "Content-Type", "application/json"
objXmlHttpMain.send strJSONToSend
set objJSONDoc = nothing
set objResult = nothing
在这里冒险,因为您认为没有必要包含实际的错误消息。 您很可能在第 3 行收到“无效字符”错误。那是因为您需要将 JSON 字符串定义为实际字符串。
改变这个:
strJSONToSend = {"type": "note", "title": "Alert", "body": "Lorem Ipsum Lorem Ipsum Lorem Ipsum."}
进入这个:
strJSONToSend = "{""type"": ""note"", ""title"": ""Alert"", ""body"": ""Lorem Ipsum Lorem Ipsum Lorem Ipsum.""}"
编辑:作为旁注,如果您在代码中使用On Error Resume Next
,请始终进行适当的错误处理,并尽可能保持本地化:
On Error Resume Next 'enable error handling
objXmlHttpMain.open "POST",URL, False
If Err Then 'handle errors
WScript.Echo Err.Description & " [0x" & Hex(Err.Number) & "]"
WScript.Quit 1
End If
On Error Goto 0 'disable error handling again
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.