[webkit-gtk] Send HTTP header line for every request

Carlos Garcia Campos cgarcia at igalia.com
Sun Jun 26 23:21:13 PDT 2016


El dom, 26-06-2016 a las 18:53 +0200, Jay Strict escribió:
> On 26.06.2016 08:20, Carlos Garcia Campos wrote:
> > So, the answer is yes, you need a web extension, and the API you
> > want
> > is the signal WebKitWebPage::send-request. That signal is emitted
> > right
> > after the request is created and before it's sent to the network
> > process, so that you can modify the request or even block it. The
> > problem is how to create a web extension when using the js
> > bindings,
> > because a web extension is a .so loaded by the web process at
> > startup.
> > So at this moment I'm afraid it's not possible to do that with js,
> > but
> > I guess you could write the web extension in C, it will be just a
> > few
> > lines of code.
> 
> That's a pity, because Gnome shell extensions seem to support only
> JS.
> You can upload the extensions on extensions.gnome.org, but what .so
> file
> should I upload? For every platform, there must be a different .so
> file.
> Furthermore, I suppose the Gnome people wouldn't accept a binary file
> uploaded there.
> 
> Is there any other way?

I don't think so.

> > 
> > > Fortunately, I think you can get the behavior you want using the
> > > UI
> > > process API, by connecting to the resource-load-started signal of
> > > WebKitWebView; that will give you a WebKitURIRequest that you can
> > > modify. I haven't tried this before; hope it works for you.
> > 
> > No, that signal is emitted when the request has already been sent,
> > note
> > that the signal is named resource-load-started, it has already
> > started,
> > and the signal is only a notification.
> 
> 
> I don't know much about WebKitGTK, but do you think there is any
> chance
> that the authors (is that you?) would consider accepting a feature
> request for my use case?

Of course, we just need to fully understand the problem and decide how
to make it possible. The easiest solution might be to add support for
loading JS web extensions. Adri started to work on python web
extensions, I don't know if JS support would be very different. See:

https://lists.webkit.org/pipermail/webkit-gtk/2015-August/002416.html

This would be the ideal solution in my opinion. But we could also add
API to the UI process to provide a set of headers to be added to any
request, for example, and use that from the web process. This would
probably be easier, but we can't add UI process API for every single
web extension feature required by JS apps, so adding a way to load JS
extensions would be much better.

> 
> Thank you
> Jay
> 
-- 

Carlos Garcia Campos
http://pgp.rediris.es:11371/pks/lookup?op=get&search=0xF3D322D0EC4582C3
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: This is a digitally signed message part
URL: <https://lists.webkit.org/pipermail/webkit-gtk/attachments/20160627/57dff9ff/attachment.sig>


More information about the webkit-gtk mailing list