Как обработать пользовательскую схему URL в WebKit GTK?

Скажем, я хочу использовать a WebKitWebView в GTK для отображения некоторых статических страниц HTML. Эти страницы используют пользовательскую схему URL, давайте назовем ее custom://. Эта схема представляет локальный файл, местоположение которого не известно заранее, в то время, когда HTML сгенерирован. То, что я делаю, соединиться с navigation-requested сигнал webview, и делает это:

const gchar *uri = webkit_network_request_get_uri(request);
gchar *scheme = g_uri_parse_scheme(uri); 

if(strcmp(scheme, "custom") == 0) {
    /* DO FILE LOCATING MAGIC HERE */
    webkit_web_view_open(webview, real_location_of_file);
    return WEBKIT_NAVIGATION_RESPONSE_IGNORE;
}
/* etc. */

Это, кажется, хорошо работает, если схема не используется в <img> тег, например: <img src="custom://myfile.png">, по-видимому, они не проходят navigation-requested сигнал.

Это кажется мне должен быть некоторый способ зарегистрировать обработчик для пользовательской схемы URL с WebKit. Действительно ли это возможно?

10
задан ptomato 13 July 2010 в 15:01
поделиться

1 ответ

Я больше знаком с портом WebKit на Chromium, но считаю, что вам может понадобиться использовать webkit_web_resource_get_uri (см. webkitwebresource.h ) для обработки таких ресурсов, как изображения.

5
ответ дан 4 December 2019 в 02:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: