Комментарии 16
GitHub it, please!
В Qt ж наверняка есть классы для работы с HTTP, зачем писать свой велосипед? К тому же кривой.
Более того, совсем необязательно использовать готовую библиотеку для этих API. Там внутри все равно все сводится к не очень сложным HTTP-запросам.
Это конечно так, но не во всех языках есть классы для работы с http. Это пример того- что используя голые сокеты можно делать всё что угодно. Они очень гибки. Можно считать это учебным примером.
Если использовать «голые сокеты», то незачем использовать Qt. И в Qt сокеты не «голые», а крутые wrapper-ы; и классы для работы с HTTP тоже основаны на этих обертках, так что смысла в велосипеде нет.
Qt был использован только для кросспалатформенности (хотя не спорю, парсинг строк и другие крутые вещи Qt это большой плюс), но этот алгоритм можно перевести и на другой язык и использовать инструменты платформы winsock/unix sockets. И опять же это демонстрационный пример. Конечно, если инструмент предлагает готовые решения — то стоит использовать их.
А чем вам не понравилась панель разработчика (F12) в Хроме? Зачем-то свой сниффер…
Сам HTTP протокол достаточно прост, чтобы узнать про него на просторах интернета (да и то в том же Chrome есть просмотр RAW данных заголовков), а данные выковыриваются из инструментов разработчика на раз два.
Сам HTTP протокол достаточно прост, чтобы узнать про него на просторах интернета (да и то в том же Chrome есть просмотр RAW данных заголовков), а данные выковыриваются из инструментов разработчика на раз два.
Панель разработчика в Хроме хороша. Но в HTTP Analyzer есть одно преимущество, можно скопировать запрос именно таким- каким его отправляет браузер (не редактируя и не дописывая его). А в панели разработчика Хрома надо просматривать данные и вручную набивать запрос. И если не знаешь какие именно запросы требуются и приходится много экспериментировать- то копипастить запрос из HTTP Analyzer быстрее чем каждый раз набирать его руками пользуясь панелью Хрома.
Странно, неужели Гугл не блокирует такие авторизации по секьюрным соображениям?
А как он отличит такую авторизацию от стандартной? ТС вроде мимикрирует под обычный браузер…
Хотя да, тут маловато хидеров. Браузеры больше шлют по хорошему.
Хотя да, тут маловато хидеров. Браузеры больше шлют по хорошему.
Tакого запроса для gmail.com достаточно. Для других почтовых сервисов типа aol.com, hotmail.com надо ещё информацию передавать. Типа название браузера, тип кодировки и т.д. Но для gmail.com это абсолютно рабочие запросы, на которые он отвечает.
Ну например по ip или клиенту последних авторизаций (которые можно увидеть в профиле кстати)
Например хотмейл и яху, на сколько я знаю, иногда могут задать вопрос типа: «а ты ли это? а подтверди» да ещё может быть и с капчёй
Думаю, что у Корпорации ** точно есть свои хитрости по определению всяких уловок.
P.S. порадовало в коде авторизации:
/* Anti-spam. Want to say hello? Contact (base64) Ym90Z3VhcmQtY29udGFjdEBnb29nbGUuY29tCg== */
Например хотмейл и яху, на сколько я знаю, иногда могут задать вопрос типа: «а ты ли это? а подтверди» да ещё может быть и с капчёй
Думаю, что у Корпорации ** точно есть свои хитрости по определению всяких уловок.
P.S. порадовало в коде авторизации:
/* Anti-spam. Want to say hello? Contact (base64) Ym90Z3VhcmQtY29udGFjdEBnb29nbGUuY29tCg== */
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Получение списка контактов с gmail.com без использования Google API