Форум программистов, компьютерный форум, киберфорум
Программирование iOS/iPhone
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
42 / 42 / 2
Регистрация: 22.11.2012
Сообщений: 225

Чужие HTTP-запросы в HTTPS

05.02.2014, 21:02. Показов 1637. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет всем!

Возникла интересная задача:
Со стороны заказчика пришел JavaScript-овый кусок кода - мол, выполняйте его после такого-то события.
Через неделю пришло письмо - надо срочно сделать так, чтобы все запросы при выполнении этого скрипта уходили через HTTPS.

Что имеем на данный момент:
В скрипте происходит следующее: инициализируется переменные, и подгружается внешний скрипт, который выполняет всю работу.
Скрипт гружу в WebView.
Сниффером смотрю, что на выходе - на выходе HTTP запросы.

Перекопал интернет, сам сидел, мучался - пока безрезультатно.. Не в курсе ли кто, как можно перехватить (как вариант) http-запросы, которые формируются в результате работы этого скрипта, и отправлять их с использованием HTTPS-протокола?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
05.02.2014, 21:02
Ответы с готовыми решениями:

HTTP и HTTPS запросы в моей Java программе и подальшая обработка полученного HTML
В общем, требуется создать метод, который бы давал моей программке на Java ходить в интернеты и получать HTML код, а далее я бы его...

www-http сниффер. Как отследить HTTP запросы?
Посмотрел я вот эту статью: http://www.cyberguru.ru/cpp-sources/network/primer-prostejshego-sniffera-dlya-windows-2000/xp.html ...

Https и http
Здравствуйте проблема есть, сайту на https нужно получить POST запрос от сайта на http но запрос блокируется и пишет Mixed Content:...

7
 Аватар для zulkis
686 / 613 / 43
Регистрация: 13.01.2011
Сообщений: 1,722
06.02.2014, 07:17
kievkao, а если скрипт изменить?

Цитата Сообщение от kievkao Посмотреть сообщение
которые формируются в результате работы этого скрипта,
Просто не особо ясно что там делается. Я понимаю, NDA, etc, но все же...
0
182 / 182 / 3
Регистрация: 10.01.2013
Сообщений: 596
06.02.2014, 11:26
А не логичнее перевалить это на разработчиков скрипта?
0
42 / 42 / 2
Регистрация: 22.11.2012
Сообщений: 225
06.02.2014, 17:20  [ТС]
Ну, дело там вот в чем:
Скрипт от сервиса PubMatic, в котором передается инфа об устройстве, местоположении и т.д.
Для последующей обработки этого добра в рекламных целях.
С представителями PubMatic вроде бы связались, они обещали "чем-то помочь", но, судя по их предыдущим актам помощи - процесс будет долгим, и не факт, что результативным..

С заказчиком общаемся через десятых лиц, и, учитывая этот, и множество других факторов, думаем, что скорей всего, все ляжет на нас..

Суть работы скрипта представляет собой отправку пакетов с упакованными внутрь данными (айдишники, координаты и т.д.).
Часть содержимого пакетов явно шифруется (так как не все параметры, которые я скармливаю скрипту я вижу в пакетах открыто), но наше руководство хочет закрыть вообще все данные.

Как вы считаете, в принципе, можно каким-то образом "перехватить" в приложении запросы, выполняемые WebView, в который я гружу html-файл со скриптом внутри?

Я слышал про фреймворк JavaScriptCore, и даже начал с ним разбираться, но коллеги выяснили, что на iOS 6 он не поддерживается, а для нас это критично.
С этим фреймворком, наверное, было бы легче что-то сделать.. Но, увы.
0
95 / 71 / 12
Регистрация: 12.12.2012
Сообщений: 214
06.02.2014, 21:23
Первое, что приходит в голову:
перехватываем запросы в делегате WebView в
Objective-C
1
webView:shouldStartLoadWithRequest:navigationType:
Если в урле запроса http, делаем мутабельную копию запроса
Objective-C
1
[request mutableCopy]
, заменяем http на https, выполняем запрос
Objective-C
1
[UIWebView loadRequest:]
и возвращаем NO
Но я не уверен, пробовать надо.
0
42 / 42 / 2
Регистрация: 22.11.2012
Сообщений: 225
07.02.2014, 14:33  [ТС]
Цитата Сообщение от glvrzzz Посмотреть сообщение
Первое, что приходит в голову:
перехватываем запросы в делегате WebView в
Objective-C
1
webView:shouldStartLoadWithRequest:navigationType:
Если в урле запроса http, делаем мутабельную копию запроса
Objective-C
1
[request mutableCopy]
, заменяем http на https, выполняем запрос
Objective-C
1
[UIWebView loadRequest:]
и возвращаем NO
Но я не уверен, пробовать надо.
Спасибо, но, к сожалению, не помогло - request всегда == nil..
Наверное, это из-за того, что я инициирую загрузку WebView методом loadHTMLString, а не loadRequest
0
42 / 42 / 2
Регистрация: 22.11.2012
Сообщений: 225
10.02.2014, 19:23  [ТС]
До момента, пока задача не стала на паузу указанием свыше, продвинулся по своему вопросу, прочитав следующий пост на StackOverflow:
http://stackoverflow.com/quest... mage-files

Может кому тоже пригодится.
1
42 / 42 / 2
Регистрация: 22.11.2012
Сообщений: 225
12.02.2014, 15:59  [ТС]
Победа!
Надежды на то, что эта сверхинтересная задача отменится, не оправдались, и к ней снова пришлось вернуться.

Проблему решил вот этот чудный класс:
https://github.com/marcuswestin/WebViewProxy

Вот таким образом я его сконфигурировал:
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
[WebViewProxy handleRequestsWithHost:@"xxx" handler:^(NSURLRequest *req, WVPResponse *res) {
        NSString* proxyUrl;
        
        if ([req.URL.query length] && [req.URL.query rangeOfString:@"xxx" options:NSCaseInsensitiveSearch].location != NSNotFound) {
            proxyUrl = [req.URL.absoluteString stringByReplacingOccurrencesOfString:@"http" withString:@"https"];
        }
        else {
            proxyUrl = req.URL.absoluteString;
        }
        NSURLRequest* proxyReq = [NSURLRequest requestWithURL:[NSURL URLWithString:proxyUrl]];
        [NSURLConnection sendAsynchronousRequest:proxyReq queue:queue completionHandler:^(NSURLResponse* proxyRes, NSData* proxyData, NSError* proxyErr) {
...
И сниффером прекрасно вижу, как все, что мне надо, уходит по https.

Правда, надо теперь разобраться с кодом самого класса, что в нем там происходит, чтобы понимать, что я накрутил))
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
12.02.2014, 15:59
Помогаю со студенческими работами здесь

Https и http
Всем привет! Нашел класс для отправки post - запроса на сайт, вот вопрос такой https здесь будет поддерживаться автоматически или как? ...

С HTTP:// на HTTPS://
Есть сервер с Apach 2.2.16 На котором поднято несколько виртуальных хостов, каждый на своем порту, все работают через SSL когда...

HTTP via HTTPS
Коллеги, подскажите-ка такой момент: есть у меня некая информационная система, которая с недавнего времени посажена мной на HTTPS ...

HTTPS запросы
Здравствуйте! вот у меня есть такой запрос "GET http://site.ru:80/ HTTP/1.1\r\n" "Host: site.ru:80\r\n" ...

Редирект с https на http
Возникла необходимость, чтобы одна страница была на http, а другая на https, но проблема заключается в том, что при редиректе для...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru