VBA HTTP POST не работает
Я пытаюсь отправить HTTP-сообщение через VBA. Вот моя часть кода
Set objHTTP = CreateObject("MSXML2.ServerXMLHTTP")
objHTTP.Open "POST", url, False
objHTTP.setRequestHeader "User-Agent", "EPS 1.0"
objHTTP.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
objHTTP.setRequestHeader "content", postString
objHTTP.setRequestHeader "Content-Length", Len(postString)
objHTTP.send
Проблема в том, что код работает, только если символ postString
меньше 65535
. Если он превышает символы 65535
, он выдает ошибку в строке ниже:
ОШИБКА: неправильный параметр
objHTTP.setRequestHeader "content", postString
Любые идеи об этом? Нужно ли устанавливать любой другой параметр, чтобы он работал?
Ответы
Ответ 1
Per: https://support.microsoft.com/en-us/kb/290591
Это должно работать:
postString = "id=" & String(66000,"x")
Dim xmlhttp
Set xmlhttp = Createobject("MSXML2.ServerXMLHTTP")
xmlhttp.Open "POST", url, false
xmlhttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
xmlhttp.send postString
Если это не сработает, возможно, что-то происходит с настройкой на стороне сервера.