Чтобы отправить запрос POST из Access VBA, вы можете использовать библиотеку Microsoft XML (MSXML) или библиотеку WinHTTP. Ниже я приведу примеры обоих методов.
-
Отправка запроса POST с использованием MSXML:
Sub SendPOSTRequestUsingMSXML() Dim url As String Dim postData As String Dim xmlhttp As Object url = "https://example.com/api/endpoint" ' Replace with your API endpoint postData = "param1=value1¶m2=value2" ' Replace with your POST data Set xmlhttp = CreateObject("MSXML2.XMLHTTP") xmlhttp.Open "POST", url, False xmlhttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded" xmlhttp.send postData ' Handle the response If xmlhttp.Status = 200 Then ' Request was successful Debug.Print xmlhttp.responseText Else ' Request failed Debug.Print "Error: " & xmlhttp.Status & " - " & xmlhttp.statusText End If Set xmlhttp = Nothing End Sub -
Отправка запроса POST с использованием WinHTTP:
Sub SendPOSTRequestUsingWinHTTP() Dim url As String Dim postData As String Dim winHttpReq As Object url = "https://example.com/api/endpoint" ' Replace with your API endpoint postData = "param1=value1¶m2=value2" ' Replace with your POST data Set winHttpReq = CreateObject("WinHttp.WinHttpRequest.5.1") winHttpReq.Open "POST", url, False winHttpReq.setRequestHeader "Content-Type", "application/x-www-form-urlencoded" winHttpReq.send postData ' Handle the response If winHttpReq.Status = 200 Then ' Request was successful Debug.Print winHttpReq.responseText Else ' Request failed Debug.Print "Error: " & winHttpReq.Status & " - " & winHttpReq.statusText End If Set winHttpReq = Nothing End Sub
В этих примерах показано, как отправить запрос POST с использованием библиотек MSXML или WinHTTP в Access VBA. Не забудьте заменить URL-адрес фактической конечной точкой API и предоставить соответствующие данные POST.