Подскажите, пожалуйста, как авторизироваться на сайте из-под Excel через msxml2.xmlhttp? Перечитал, наверное, все форумы, ответа так и не нашел, точнее нашел, но не понимаю какому заголовку передавать значения.
Прошу подсказать как заставить макрос авторизироваться. Спасибо. Код вкратце получился такой, где URL = "https://provagon.com";, а заголовок Authorization взят из одного из примеров, найденных на форумах. Поля login и Password заданы корректно, и в ручную с их помощью можно пройти авторизацию.
Код
...
With oHttp
.Open "get", URL, False, login, Password
.setRequestHeader "Authorization", "Basic " + login + ":" + Password
.send
arr = Split(.responsetext, vbLf)
' MsgBox .getAllResponseHeaders()
End With
....
URL: https://provagon.com/web/CloseSitePS.nsf?Login Method: POST SiteID=sitePG&RedirectTo=%2Fservice%2FControlAccess.nsf%2F%28WebAuthorization%29%3FOpenAgent%26SiteID%3DsitePG%26Rnd%3D0088242923628595%26Redirect%3D%2F&username=Ник&password=Пароль где RedirectTo=/service/ControlAccess.nsf/(WebAuthorization)?OpenAgent&SiteID=sitePG&Rnd=0088242923628595&Redirect=/
doober, спасибо за наводку. Однако, мне явно не хватает знаний, чтобы сообразить что к чему.
Правильно ли я понял, что: 1. В качестве URL должна быть указана ссылка на страницу с авторизацией? 2. Я должен в SiteID вместо "Ник" и "Пароль" подставить свои значения и отправить эту строку запросом? 3. В чем отличие методов get от post? Где можно подробнее про них почитать? 4. Я могу как-то проверить, что авторизация на сайте прошла успешно?
В целом буду рад советам, где почитать побольше про эту функцию.
Вы нашли где-то кусок кода для авторизации, но у вас не тот случай В вашем случае (как и на 99% сайтов) авторизацию надо выполнять POST запросом пример кода можно посмотреть здесь: https://excelvba.ru/code/atsenergo_login
К сожалению, вынужден опять вернуться к этому вопросу.
Иногда при попытке авторизоваться выдает такую ошибку (Сбой скачивания указанного ресурса).
Вот часть кода, в котором ошибка (на строке с .Send).
Код
PostData = "username=" & login & "&password=" & Password
'авторизация на сайте
With oHttp
.Open "post", URL_autorization, False
.send PostData
End With
Подскажите, пожалуйста, с чем она может быть связана?