#powershell #http
Вопрос:
Я пытаюсь настроить API Powershell с помощью веб-приложения, которое использует наша компания. Я скачал сценарий, который мог бы выполнить нечто подобное, но я столкнулся с проблемой наличия недопустимого маркера перекрестной ссылки на сайт. Я довольно плохо знаком с HTTP, но достаточно покопался, чтобы сузить круг вопросов.
Скрипт отправляет два HTTP-веб-запроса: один для получения данных от определенного объекта в приложении и один для редактирования одного из атрибутов этого объекта. Первый HTTP-запрос, который получает данные, выполнен успешно. Если я просматриваю один и тот же HTTP-запрос в своем браузере, я вижу, что мне назначен XSRF-токен как часть заголовка запроса.
Изображение токена XSRF в браузере
Я могу скопировать/вставить токен в Postman как часть заголовка запроса, и второй запрос, который не удался в powershell, будет выполнен успешно, и я вижу, что он также выполняется в конце приложения. Я могу сказать, основываясь на ошибке 403 в powershell, что все, чего мне не хватает, — это маркер XSRF.
Тем не менее, я не вижу никакого способа получить доступ к заголовкам запросов HTTP-ответа, я могу получить заголовки ответов только путем доступа к свойству .headers ответа, например:
$Result = Invoke-WebRequest @Arguments -Headers $script:ServerConnection.Headers -SessionVariable ConnectServer -UseBasicParsing
$header = Result.headers
Короче говоря, можно ли получить доступ к заголовкам запросов этого HTTP-ответа? Если это так, я мог бы получить доступ к нужному токену и ввести его в заголовок запроса второго аргумента, который не работает.