我正在尝试从Excel中的VBA应用程序发送JSON对象。下面的代码正确地发送了请求,但是我不知道如何在主体中使用JSON对象发出请求。
Sub Post()
Set objHTTP = CreateObject("WinHttp.WinHttpRequest.5.1")
URL = "http://localhost:3000/test"
objHTTP.Open "POST", URL, False
objHTTP.setRequestHeader "Content-type", "application/x-www-form-urlencoded"
objHTTP.setRequestHeader "User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)"
objHTTP.send "test=6"
End Sub
例如,如果我尝试发送"{test:6, test2: 7}"
并在服务器上记录请求的正文,则会得到{ '{parts:6, test: 7}': '' }
2条答案
按热度按时间tv6aics11#
正如你可能已经知道的,JSON结构确实会产生严重的问题。在您的例子中,我会说这都是关于引号的,如果您尝试验证您的
{test:6, test2: 7}
,您可以在here中看到。尝试下面的代码。在我看来似乎是合理的:
lnlaulya2#
如果其他人正在为POSTS而挣扎,在那里你的身体根本不会被发送,特别是当在objHTTP.Send行使用变量而不是文字文本时,这对我来说很有效,经过几个小时的挣扎,尽管我将变量声明为字符串:
这对我来说不起作用,因为我在其他地方看到过: