我一直试图弄清楚如何使用Webkit GTK API来获取特定页面加载的HTTP响应代码。Webkit GTK:获取HTTP响应
的Webkit GTK使用Soup API为HTTP的网络,并根据documentation,似乎有两个相关的信号:"resource-request-starting"
和"resource-response-received"
。
所以,我尝试了"resource-request-starting"
连接信号:
g_signal_connect(web_view, "resource-request-starting", G_CALLBACK(resource_request_starting_callback), 0);
...和它的作品。在回调处理程序中,我可以访问底层的SoupMessage
对象,该对象向我提供有关HTTP请求的信息。
所以这让我的HTTP请求,但是......当我试图让实际的HTTP响应,我遇到了麻烦。我试图监听"resource-response-received"
信号:
g_signal_connect(web_view, "resource-response-received", G_CALLBACK(resource_response_received_callback), 0);
这将导致GTK发出警告:
GLib-GObject-WARNING **: /build/buildd/glib2.0-2.30.0/./gobject/gsignal.c:2295: signal `resource-response-received' is invalid for instance `0x2b46c00'
周围的Googling为resource-response-received
,我发现几乎没有在所有关于该信号的信息。 documentation claims它做我想要的,但实际上它并不实际工作。
所以,我不知道我是否会以这种错误的方式去做。但总的来说,任何人都可以提供一个例子,说明如何使用Webkit GTK为页面加载获取实际的HTTP状态代码(如200,404等)?
当使用真正旧版本的webkitgtk时,如何检测404页面加载?我相信我正在使用1.4 ish ... – Chimera 2015-03-20 21:31:51