Кэширование внешнего JavaScript для виджета QTWebkit в приложении PYQT

StackOverflow https://stackoverflow.com/questions/3872033

Вопрос

У меня есть QWebView в моем приложении, который отображает страницу HTML, хранящуюся в приложении в качестве QResource. Эта страница, однако, требует мясистых внешних библиотек JavaScript, таких как MathJax, которую я хотел бы включить в качестве ресурса из-за его размера.

Моя проблема заключается в том, что кажется, что QtWebkit не кэширует эти файлы в виде обычного браузера, и каждый раз, когда я обновляю виджет, он загружает Afreшь MathJax.

Поэтому мой вопрос: есть ли способ кэшировать эти библиотеки после первого раза, когда они загружаются, не прибегая к отправке его с приложением в качестве ресурса?

Это было полезно?

Решение

Вы должны попробовать, если простой QtnetWork на основе скачивания почитают настройку кеша или нет. Также см. Если настройки (QWebsettings) установлены правильно.

Во всем случае вы должны быть в состоянии ввести пользовательский QNetWorkaccessmanager, который обрабатывает кэширование вашей пользовательской библиотеки JS. Видеть http://ariya.blogspot.com/2010/05/qnetworkaccessmanager-tracenet-speed.html. а также http://ariya.blogspot.com/2010/06/proxy-server-with-filtering-feature.html. в качестве примеров и следовать за этим оттуда.

Другие советы

Не могли бы вы опубликовать какой-то исходный код? После загрузки, что данные будут оставаться в / TMP / папке в течение некоторого времени. Возможно, вы, вероятно, используете данные в папке Temp, я думаю, вы не соблюдаете эту политику.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top