最近有个需求,需要从公司服务器上获取数据,由于服务器是经过加密的,因此需要用到https协议来访问,在这总结一下:
转载请标明原处:https://blog.csdn.net/weixin_42066997/article/details/82251356
https和http最大的不同在于多了一个证书验证过程,证书哪里来?
假如是公司内部的服务器,服务器的开发人员会给你提供证书,可能还有密钥,以我为例,我得到一个crt证书和一个key密钥
假如是第三方服务器,那就需要你找第三方去下载相关证书了
现在我们要在qt上创建证书,代码如下:
//创建QFile类用于读取本地文件
QFile crtFile("E:/xxxxx.crt");
crtFile.open(QIODevice::ReadOnly);
//将读取到的内容用于创建证书,QSslCertificate为证书类
const QSslCertificate certificate(&crtFile, QSsl::Pem);
crtFile.close();
//密钥的创建同理,QSslKey为密钥类
QFile keyFile("E:/xxxxx.key");
keyFile.open(QIODevice::ReadOnly);
const QSslKey prvateKey(&keyFile, QSsl::Rsa);
keyFile.close();
创建完证书和密钥,我们就需要上传到服务器进行验证&#x