Это подпрыгивает вас в другом месте?
Попробуйте переключатель -L
:
http://curl.haxx.se/docs/manpage.html#-L
Редактировать:
Нажатие кнопки на первой странице [1] является POST для [2].
Так что я думаю, что вы хотите сделать это POST, используя curl (сохранение куки с -c
).Обычно это просто перенаправляет ваш браузер на [3], но я думаю, что вы хотите сохранить cookie по пути, поэтому сначала выполните POST для [2], затем GET [3], снова используя -c
для сохранения файлов cookie, но также и * 1016.* с тем же файлом cookie, который вы создали при размещении сообщения в [2].
Когда вы ПОЛУЧАЕТЕ [3], вы заметите, что результатом является страница, которая использует javascript для автоматической отправки формы с некоторыми значениями аутентификации.Вам нужно будет извлечь эти значения, поместить их в файл и затем использовать их как -d
(или --data-urlencode
) POST-данные для [4].Разбор значений может быть нетривиальным, в зависимости от ваших знаний, например, perl.Но, тем не менее, вы можете ПОСТАВИТЬ эти значения в [4] и использовать те же куки, что и раньше, и это должно вывести вас на страницу входа [5].
Дайте мне знать, как это работает.
[1] https://acadinfo.wustl.edu/
[2] https://acadinfo.wustl.edu/redirectToWSPrivate.asp
[3] https://acadinfo.wustl.edu/Private/WebSTAC.asp
[4] https://login.wustl.edu/idp/profile/SAML2/POST/SSO
[4a] https://login.wustl.edu/idp/Authn/UserPassword
[5] https://connect.wustl.edu/login/wulogin.aspx
Еще одно примечание: Таким образом, похоже, что даже после публикации в [4] ваш браузер обычно будет отправлен на [4a], который затем выполняет еще один javascriptперенаправить на [5].Поэтому после публикации в [4] вам нужно будет вручную получить [5] с вызовом curl и тем же файлом cookie, который вы использовали все это время.