Отправка пользовательского заголовка вместе с запросом qtwebkit

Я работаю с PyQt4 и QtWebKit, и в запросе веб-страницы необходимо отправить собственный заголовок «Хост» вместе со стандартным HTTP-запросом. Я не вижу никаких вариантов добавления пользовательских заголовков в запрос, но это все новое для меня, поэтому я надеюсь, что что-то упустил. Я смотрю здесь:

http://doc.qt.digia.com/4.6/qwebsettings.html

Мы будем очень признательны за любые советы.


person lennysan    schedule 07.09.2010    source источник


Ответы (2)


Вы можете установить заголовки для отправляемого QNetworkRequest:

QNetworkRequest request;
request.setUrl(QUrl("http://qt.nokia.com"));
request.setRawHeader("User-Agent", "MyOwnBrowser 1.0");

Чтобы использовать этот пользовательский запрос при загрузке страницы, используйте перегруженную load функция:

myWebView->load(request);
person Kaleb Pederson    schedule 07.09.2010

Если вы хотите применить это ко всем всем запросам, которые делает QtWebKit, вы можете создать подкласс QNetworkAccessManager и повторно реализовать его функцию createRequest(), чтобы соответствующим образом изменить заголовки.

person kralyk    schedule 23.03.2012
comment
Не могли бы вы рассказать, как это можно реализовать, если createRequest() принимает QNetworkRequest по константной ссылке? Насколько я могу себе представить, следует вызывать setHeader() или setRawHeader() соответствующего QNetworkRequest. - person NuPagadi; 02.12.2016