Я хотел бы создать веб-представление, где бы я мог полностью контролировать загружаемый контент. По сути, я хочу предоставить экземпляр класса, который играет роль различных веб-серверов, указанных в URL-адресах. В идеале я бы предоставил этому веб-представлению делегата, и он бы сообщал делегату каждый URL, который ему требуется, и делегат отвечал бы с типом MIME и данными.
Один из способов сделать это состоит в том, чтобы буквально иметь веб-сервер, работающий на каком-то настраиваемом порту (скажем, 2222), и указать исходный URL-адрес, например http://localhost:2222/initial/base/url. Однако это позволяет мне перехватывать только относительные URL-адреса на одном хост, а не абсолютные URL-адреса других хостов.
Представители WebView, которые я видел в документации, по-видимому, позволяют пользователю осуществлять высокоуровневый контроль, например, выбирать политику для загрузки URL-адресов или отслеживать ход загрузки, но не возможность перехватывать и контролировать данные, которые загружается сам.
Любые намеки на то, как я мог бы достичь этой цели?