Отправка POST запроса из Basic (VBA в MS Office, Basic в OpenOffice.org / LibreOffice)

Разбираться с этим вопросом пришлось, когда я захотел импортировать данные на сайт из базы в MSAccess, без установки самого Access


Dim strData As String
Dim strResponse As String

strData = "postparam=postval&postparam2=postval2"

Set objHTTP = CreateObject("MSXML2.ServerXMLHTTP")
objHTTP.Open "post", "http://site.info/path/to/script?Getparam=getval", False
objHTTP.setRequestHeader("Content-Type", "application/x-www-form-urlencoded")
objHTTP.Send strData
strResponse = objHTTP.responsetext

и далее обрабатываем строку strResponse.

Важно выполнить вызов objHTTP.setRequestHeader (иногда его пропускают). Без него этот код выполняется в MSO, но на сервер приходит пустой POST из OOo.
Читать далее