gpt4 book ai didi

qt - QNetworkAccessManager 请求失败(CA 签名证书)

转载 作者:太空宇宙 更新时间:2023-11-03 14:59:07 25 4
gpt4 key购买 nike

我有一个用于 Web 服务的 CA 签名证书。在 Chrome 和 Firefox 中一切正常。

现在我想为 web 服务编写一个 QT 客户端。但我得到的只是 30 秒后“连接关闭”。如果我请求“https://gmail.com”或“https://www.dfn.de/”,我会得到正确的结果。

这是我的代码。

void Request::send() {
QUrl url("my url");
qDebug() << "URL: " << url;

QNetworkAccessManager *manager = new QNetworkAccessManager(this);

QNetworkRequest request(url);
request.setHeader(QNetworkRequest::UserAgentHeader, userAgent);

QObject::connect(manager, &QNetworkAccessManager::authenticationRequired, this, &Request::provideAuthenication);
QObject::connect(manager, &QNetworkAccessManager::finished, this , &Request::replyFinished);
QObject::connect(manager, &QNetworkAccessManager::sslErrors, this , &Request::sslErrors);

qDebug() << "fire request";
manager->get(request);
}

void Request::provideAuthenication(QNetworkReply *, QAuthenticator *ator) {
qDebug() << "provideAuthenication";
ator->setUser("***");
ator->setPassword("***");
}

void Request::replyFinished(QNetworkReply *reply) {
if (reply->error() != QNetworkReply::NoError)
qDebug() << "Network Error: " << reply->errorString();

QVariant statusCode = reply->attribute(QNetworkRequest::HttpStatusCodeAttribute );
QVariant statusPhrase = reply->attribute(QNetworkRequest::HttpReasonPhraseAttribute );
qDebug() << "Result: " << statusCode.toInt() << " " << statusPhrase.toString();
qDebug() << "Data: " << reply->readAll();
}

void Request::sslErrors(QNetworkReply *, const QList<QSslError> &errors) {
foreach (const QSslError &error, errors) {
qDebug() << "SSL Error: " << error.errorString();
}
}

这就是输出。没有 sslError!没有 HTTP 错误!

URL: QUrl( "my url" )
Network Error: "Connection closed"
Result: 0
Data: ""

那么为什么会挂QT或者服务器呢?我错过了什么吗?!

最佳答案

这是 openjdk7 (glassfish) 配置错误。

Aldaviva 的提示对我有效服务器故障https://serverfault.com/questions/389197/ssl-routinesssl23-writessl-handshake-failure

糟糕的是 QT 不会抛出 ssl 错误。

关于qt - QNetworkAccessManager 请求失败(CA 签名证书),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25145101/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com