У меня есть приложение (VBS), которое извлекает данные со стороннего веб-сайта через запросы REST xmlhttp.
Первый вызов REST этого приложения относится к URL-адресу для входа, который также возвращает файл cookie JSESSIONID ('Set-Cookie: JSESSIONID=7XYZD; Path=/; Secure; HttpOnly'). Вызываемый URL-адрес: 'https://www.bullionvault.com/secure/j_security_check?j_username=XXX&j_password=YYY'.
Второй запрос, для которого мне нужно войти в систему, извлекает актуальную информацию с другого URL-адреса этого веб-сайта, возвращая данные в виде ответа XML-документа в виде '.responseXML'. . Этот поток отлично работает, если я запускаю приложение во время работы на виртуальной машине (rdp) или локально с моего ноутбука.
Теперь, когда я использую задание Azure Automation для запуска того же самого приложения на виртуальной машине, второй запрос (данные) больше не возвращает ожидаемый XML-документ; Я получаю «200 OK», но затем (бесполезная) страница входа на сайт в виде документа HTTP в виде «.responseText»; '.responseXML' пуст.
Похоже, что использование задания службы автоматизации Azure препятствует отправке JSESSIONID обратно на сервер REST при выполнении запроса данных. Следовательно, сервер больше не распознает меня и возвращает мне свою страницу входа. Обратите внимание, что веб-браузер явно не задействован.
Вопрос: Правильно ли мое подозрение, что использование службы автоматизации Azure нарушает работу приложения? и как решить эту проблему?