糖尿病康复,内容丰富有趣,生活中的好帮手!
糖尿病康复 > vba给服务器发送消息 我如何发送一个HTTP POST请求使用VBA从Excel服务器?我如何发

vba给服务器发送消息 我如何发送一个HTTP POST请求使用VBA从Excel服务器?我如何发

时间:2019-03-27 09:19:05

相关推荐

vba给服务器发送消息 我如何发送一个HTTP POST请求使用VBA从Excel服务器?我如何发

什么VBA代码是需要从Excel电子表格执行HTTP POST?

Answer 1:

Set objHTTP = CreateObject("MSXML2.ServerXMLHTTP")

URL = ""

objHTTP.Open "POST", URL, False

objHTTP.setRequestHeader "User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)"

objHTTP.send("")

或者,通过HTTP更大的控制要求,你可以使用WinHttp.WinHttpRequest.5.1代替MSXML2.ServerXMLHTTP 。

Answer 2:

如果你需要它在Mac和Windows的工作,你可以使用QueryTables:

With ActiveSheet.QueryTables.Add(Connection:="URL;/flights.txt", Destination:=Range("A2"))

.PostText = "origin_airport=MSN&destination_airport=ORD"

.RefreshStyle = xlOverwriteCells

.SaveData = True

.Refresh

End With

笔记:

至于输出...我不知道这是否是可能的结果返回给调用VBA函数相同的细胞。 在上面的例子中,结果被写入到A2。

关于输入...如果你想要的结果,当你改变某些细胞更新,确保这些细胞是参数的VBA函数。

的Mac,不具有VBA这不能在Excel工作。 的Excel for Mac 中得到了VBA回来。

有关详细信息,你可以看到我的完整的总结关于“ 使用Web服务从Excel中 。”

Answer 3:

除了的anwser 蜥蝪比尔 :

大多数后端的解析原始post数据。 在PHP例如,你将有一个数组$ _POST其中所述后数据中各变量将被保存。 在这种情况下,必须使用附加的报头“内容类型:应用程序/ x WWW的形式进行了urlencoded”:

Set objHTTP = CreateObject("WinHttp.WinHttpRequest.5.1")

URL = ""

objHTTP.Open "POST", URL, False

objHTTP.setRequestHeader "User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)"

objHTTP.setRequestHeader "Content-type", "application/x-www-form-urlencoded"

objHTTP.send ("var1=value1&var2=value2&var3=value3")

否则,您必须阅读变量“$ HTTP_RAW_POST_DATA”原始POST数据。

Answer 4:

您可以通过添加到MSXML的引用在VBA项目中使用ServerXMLHTTP的。

(通常通过编辑宏)打开VBA编辑器

转到可用引用的列表

检查Microsoft XML

单击确定。

(从VBA项目内引用MSXML )

该ServerXMLHTTP的MSDN文档有大约所有属性和ServerXMLHTTP的方法的全部细节。

总之,虽然,它的工作原理基本上是这样的:

调用开放的方法来连接到远程服务器

呼叫发送发送请求。

通过阅读响应的responseXML , responseText的 , responseStream或responseBody

Answer 5:

我使用MSXML库,然后使用XMLHttpRequest对象这样做过。 见http://scriptorium.serve-it.nl/view.php?sid=40

文章来源: How can I send an HTTP POST request to a server from Excel using VBA?

vba给服务器发送消息 我如何发送一个HTTP POST请求使用VBA从Excel服务器?我如何发送一个HTTP POST请...

如果觉得《vba给服务器发送消息 我如何发送一个HTTP POST请求使用VBA从Excel服务器?我如何发》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。