Я уже успешно зарегистрировал и опубликовал данные и загрузил данные с 2-х сайтов с помощью idHttp.post(), но у меня возникли проблемы с третьим один
на этом новом сайте, логин действительно работает, но когда я пытаюсь загрузить файл (который использует __doPostBack для ссылки для загрузки), я переадресовываюсь на страницу с ошибкой.
У меня есть двойная и тройная проверенные все данные, и они точно так же, как показал мне http-анализатор , единственное отличие, которое я заметил, это то, что в моих других попытках и сайтах, к которым я обращался успешно, __ viewstate одинаково каждый раз, и он никогда не изменяется, но на этом третьем сайте он изменяется при каждом входе (я имею в виду, когда я иду в сайт вручную, и я проверяю результаты http-анализатора, я вижу, что значение параметра __viewstate каждый раз различается)
что мне делать? это проблема с изменением параметра __viewstate? если да, то как я могу это исправить?
код я использую для размещения:IdHttp: перенаправление на страницу с ошибкой при попытке загрузить файл, __viewstate меняется каждый раз
try
Response := TMemoryStream.Create;
try
Request := TStringList.Create;
try
Request.Assign(TATDFileUtility.convertPairValueToRequestList(TATDFileUtility.extractPairValue('the site login parameters.txt', 3)));
IdHTTP := TIdHTTP.Create;
try
IdHTTP.AllowCookies := True;
IdHTTP.HandleRedirects := True;
IdHTTP.Request.ContentType := 'application/x-www-form-urlencoded';
IdHTTP.Post('thesite, the address for the login and main page and download page is the same', Request, Response);
Response.SaveToFile('responseCode0.txt');
Request.Clear;
Response.Clear;
Request.Assign(TATDFileUtility.convertPairValueToRequestList(TATDFileUtility.extractPairValue('httpDownloadParamters.txt', 3)));
IdHTTP.Post('thesite, the address for the login and main page and download page is the same', Request, Response);
Response.SaveToFile('responseCode1.txt');
, как вы можете увидеть после проверки repsonsecode0, я могу видеть, что я вошел в систему, но второй код ответа показывает мне ошибку и отслеживания его показывает, что я перенаправление на страницу с ошибкой.
Что вы ожидаете? Мы не знаем, на каком сайте, мы не видим никакого кода, мы можем только догадываться. Вы лжете, что вы отправляете точно то же самое - вы этого не делаете. Сначала вы должны получить доступ к сайту входа, чтобы получить правильное значение __viewstate. Затем войдите в систему с этим значением, а затем снова проверьте, изменилось ли значение и использовалось новое. Его легко исправить - просто отправьте правильное значение. – smooty86
@ smooty86, по соображениям конфиденциальности, я не могу предоставить адрес сайта, но код такой, как вы видите выше. –
@ smooty86, если мне нужно динамически получить __viewstate, как я могу это сделать? Как я могу получить текущее значение __viewstate, чтобы я мог передать его моей программе?, Thx –