我在显示www.facebook.com时遇到问题Qt5 QML QWebKit 3.0
。
问题在于SSL 证书。有一个解决方案Qt 4.*
,但我需要Qt 5.0.1
在所有 API 都发生变化的地方实现它。
Qt 4.*
可以在此处找到示例解决方案链接
这是解决方案,如何在 Qt5 中忽略来自 QML 的 SSL 错误。它帮助我展示了 Facebook 页面。我将使用实验性 API。该解决方案适用于 Windows 7 64bit 中的 Qt 5.0.1 msvc2010 版本。
import QtWebKit 3.0
import QtWebKit.experimental 1.0
WebView {
id: webView;
url: "https://www.facebook.com";
experimental.certificateVerificationDialog: Item {
Component.onCompleted: {
model.accept();
}
}
}
我无法使用实验功能解决 Qt 5.1 和 MinGW4.8 的这个问题。
最后我安装了新的 Qt 5.2 版本,它有一个更具表现力的错误消息:
QSslSocket: cannot call unresolved function SSLv23_client_method
QSslSocket: cannot call unresolved function SSL_CTX_new
QSslSocket: cannot call unresolved function SSL_library_init
QSslSocket: cannot call unresolved function ERR_get_error
QSslSocket: cannot call unresolved function ERR_get_error
因此,有了这些新信息,解决方案就是安装 Win32OpenSSL:http ://slproweb.com/products/Win32OpenSSL.html