#c_sharp #http #get
Закрыт. Этот вопрос не по теме. Ответы на него в данный момент не принимаются. Хотите улучшить этот вопрос? Переформулируйте вопрос, чтобы он соответствовал тематике «Stack Overflow на русском». Закрыт 4 года назад. Проблема для меня магическая. Задача - пройти авторизацию на сайте ru.wix.com. Для этого нужно получить определенные куки, отправив определенный запрос. Работаю из приложения на c# с помощью библиотеки xNet. Так вот, проблема в том, что делая запрос из приложения(как через fiddler, так и напрямую), мой запрос не проходит, куки не выдаются и загружаются другие данные. Но стоит мне повторить тот же самый запрос(!) из fiddler'а(хот-кей "R" или "Reissue Requests"), как он спокойно проходит, выдаются куки и загружается нужный контент. Этому есть какое-то объяснение? UPD: Заметил, что если повторять запрос с частотой 1сек - то проходит ровно на 5й раз, если с частотой в 2 - то где-то на третий. При этом одиночная пауза в 3-4-5-6сек не подходит, все равно нужно повторять. В браузере и через fiddler проходит все с 1го раза. UPD2:: Попробовал через WebRequest - тоже самое. При этом, если формировать те же самые запросы от начала и до конца с помощью Composer fiddler'a, проходит на ура. Очень прошу помощи.
Ответы
Ответ 1
Проверь редиректы. .net'овский запрос по умолчанию сам обрабатывает редирект, поэтому если куки были выставлены в ответе, где делается редирект, то ты их пропустил и получил уже следующую страницу (запрошенную без этих кук). Попробуй отключить автоматическую обработку редиректа, достать всё необходимое из ответа и выполнить дальнейшие действия вручную. Кстати, там, где я действовал таким образом, я вообще не запрашивал страницу, на которую сделан редирект - я просто вытаскивал куки и слал следующий нужный мне запрос.Ответ 2
На сколько понял, вы проксируете запрос через фидлер, и он отрабатывает успешно. В таком случае, скорее всего, библиотека которой вы пользуетесь, не обрабатывает ответ сервера коректно.
Комментариев нет:
Отправить комментарий