Проблема с входом через idhttp, сайт не отправляет имя пользователя и пароль со своими сообщениями

пожалуйста, обратите внимание, что я задал этот вопрос некоторое время назад, но я не смог ответить на него из-за какой-то личной проблемы, поэтому он был удален, пользователь мета предложил мне снова задать вопрос, и вот он

Недавно я столкнулся с сайтом, который не посылает никакой динамической информации при попытке входа, даже Username а также Password!, что я имею в виду, что после того, как я использую Fiddler а также Http Analyzer я вижу, что происходит 4 события:
Все это происходит в веб-браузере:
1- простой Get для входа на главную страницу
2- А Post который отправляет некоторые данные (Эти данные не включают в себя мой Username а также Password и они кажутся статичными! и хотя есть __USERCONTROLPATH который может быть извлечен из step 1 ответ, он не меняется, то есть, даже если я пытаюсь войти в систему несколько раз, используя разные браузеры в разное время, все, включая __USERCONTROLPATH та же)
3- А Post который из JSON введите и запрос будет пустым, а ответ содержит только одну строку, как вы можете видеть на изображении ниже:

4- А Get происходит, что является главной страницей входа в систему, но если вы посмотрите на HTML Вы можете видеть, что пользователь вошел в систему!

Я пытался выполнить эти шаги один за другим, но я не могу успешно войти на сайт, и я не могу понять, как мой Username а также Password отправлено!

Здесь вы можете увидеть код, который я написал:

//for the sake of cookies and ... i do a Get on the main page 
idHttp.get('MainLogPage');
//i send the first post which contains some information which never changes, they seems static and do not include the username and password 
idhttp.post('someURL', requestList);

jsonRawRequest := TJSONObject.Create;
jsonRequest := TStringStream.Create(jsonRawRequest.ToString, TEncoding.UTF8);
/here i try to do the post that you saw in the image, no value is sent so i send an empty json request.
idhttp.post('someOtherURL', jsonRequest)

В конце мой вопрос: как я могу войти на такой сайт? Что мне не хватает? В настоящее время я получаю сообщение об ошибке Step 3 когда я публикую JSON Вот изображение ошибки:

Обновление 01:
Я хотел обновить весь пост и объяснить каждый шаг более подробно, но, как я возился с Fiddler и проверяя сообщения снова, я заметил что-то, когда Browser отправляет POST"https://www.somewebsite.com//Index.aspx/LoginUser" тип application/json и в "HTTP анализаторе" я вижу, что он отправляет и получает JSON но в Fiddler Webforms пустой! так что я проверяю TextView вот где я это увидел! я снова пошел и проверил HTTP Необработанный поток в анализаторе, и там я также видел отправляемое имя пользователя и пароль, я не знаю, как пост содержит эту строку, которую вы можете увидеть ниже, но в fiddler вы можете увидеть ее в "TextView" и в http анализаторе вы можете увидеть это в raw stream, теперь, когда я это знаю, вы можете сказать мне, как я могу имитировать такую ​​запись? Кстати, зашифрованный пользователь и пароль, который, как я полагаю, является самостоятельным, и мне, вероятно, придется Обратитесь к администратору сайта за алгоритмом? Во всяком случае, обо всем по порядку, как я могу отправить такой POST?
В Fiddler:

Анализатор HTTP:

Обновление 02:
Я пробовал что Remy Lebeau сказал, но JSON на сайте не было стандартного, как вы можете видеть в:
Входные данные не являются допустимой строкой Base-64 Ошибка, My JSON использует двойные кавычки вместо одинарных кавычек
После этого я попробовал жестко закодированное решение и прочитал JSON из файла, как вы можете видеть ниже:

loader := TStringList.Create;
loader.LoadFromFile('jsonWithCustomFormat.txt');
jsonRequest := TStringStream.Create(loader[0], TEncoding.UTF8);  

После этого я установил ссылку на страницу входа:

idHttp.Request.Referer := 'myLoginPageURL';  
idHttp.Request.ContentType := 'application/json'

И наконец я отправляю POST:

idhttp.Post(URL, jsonRequest, ms);  

Результатом того, что я сделал, была ошибка предупреждения, как вы можете на изображении ниже:

Я очень озадачен тем, в чем заключается проблема, я должен решить эту проблему, поэтому любая подсказка или помощь очень ценятся.

0 ответов

Другие вопросы по тегам