我正在使用PySide2和QML。
我的qml文件中有一个Image元素,每当我尝试在该图像元素中加载https URL时,都会出现以下错误:QSslSocket::connectToHostEncrypted: TLS initialization failed
我在Windows上,在网上查找此错误后,建议在使用Vanilla Qt时将OpenSSL dll放在可执行文件旁边。问题是我正在使用Python,却不知道PySide2在哪里寻找这些dll。
任何帮助将不胜感激。
这是我的QML图片项目:
Image {
id: image
height: parent.height - 5
width: parent.width - 5
source: url
sourceSize.width: image.width
sourceSize.height: image.height
asynchronous: true
fillMode: Image.PreserveAspectFit
}
url
是python边模型中的一个角色,该模型使用setContextProperty
方法与QML共享。该模型填充了Reddit中的图片网址。
答案 0 :(得分:0)
下载与用于构建已安装的Qt版本的版本兼容的OpenSSL版本。确保将其放在运行应用程序时Qt运行时可以看到的位置。
注意 OpenSSL版本 1.0 与 1.1
向后不兼容如果您使用预先配置的安装程序安装了Qt,请检查使用该版本预先构建的版本,例如 Qt 5.12随附的OpenSSL v1.1