Используйте UIWebView с локальным прокси-сервером, работающим на iPhone
Вопрос
Допустим, у меня есть приложение для iPhone с UIWebView. Можно ли написать свой собственный HTTP-прокси-сервер на iPhone, а затем пропустить через этот прокси каждую страницу, загруженную в UIWebView?
Я думаю, что есть две основные части:
<Ол>Насколько сложно было бы написать такой прокси-сервер? Что нужно сделать? Я знаю, что это, вероятно, очень наивно с моей точки зрения, но это звучит довольно просто, разве вы не делаете в основном получение сообщений от клиента и их маршрутизацию на сервер? Что делает прокси-сервер таким сложным?
Это может быть полезно, если вы хотите изменить заголовки HTTP запросов, отправляемых в UIWebView. Потому что, хотя параметр (NSURLRequest *)
в [webView: shouldStartLoadWithRequest: navigationType:]
на самом деле является (NSMutableURLRequest *)
, если вы изменить любое из его значений, это не работает (жаль, что это было не так просто).
Решение
Вероятно, вам лучше создать прокси-сервер вне приложения iPhone и разместить его где-нибудь в Интернете. Затем вы можете изменить URL-адрес в shouldStartLoadWithRequest для фактической загрузки с вашего прокси-сервера.