Я создаю приложение Quickly ~ HTML5, оно прекрасно работает, пока я не попытаюсь использовать хранилище WebSQL, которое не может открыть базу данных:
var db = openDatabase('mydb', '1.0', 'Test DB', 5 * 1024 * 1024);
выдает следующую ошибку : Ошибка: SECURITY_ERR: DOM Exception 18
Код Python, который вызывает веб-просмотр, выглядит так:
self.webview = WebKit.WebView()
self.scroller.add(self.webview)
self.webview.props.settings.enable_default_context_menu = False
self.webviewsettings = self.webview.get_settings()
self.webviewsettings.set_property("javascript-can-open-windows-automatically", True)
self.webviewsettings.set_property("enable-universal-access-from-file-uris", True)
self.webviewsettings.set_property("enable-developer-extras", True)
self.webviewsettings.set_property("enable-html5-database", True)
self.webviewsettings.set_property("enable-html5-local-storage", True)
self.webviewsettings.set_property("enable-offline-web-application-cache", True)
self.webviewsettings.set_property('enable-file-access-from-file-uris', 1)
self.webview.load_uri(get_media_file('app/index.html'))
inspector = Inspector(self.webview.get_inspector())
self.webview.show()
Что я делаю не так? любая помощь будет оценена (:
Это не связано с python, но javascript под webkit. Пожалуйста, посмотрите этот вопрос о переполнении стека.
Подводя итог, вы не можете использовать openDatabase поверх локальных веб-страниц, вам нужно будет использовать полный локальный сервер.
Вы можете использовать SimpleHTTPServer , чтобы запустить сервер из Python и подключиться к нему с помощью веб-просмотра.