Я хочу получить размер файла файла, размещенного на Amazon S3, в моем приложении Qt.Qt get Content Длина файла Amazon S3
ниже код работает отлично подходит для не-S3 файлов, но для знакового S3 связывает он печатает QVariant(Invalid)
кажется, что Content-Length не в заголовке HTTP S3 ... так как я получаю размер файла?
void MainWindow::requestFileSize(QString url)
{
QNetworkRequest req;
m_netmanager = new QNetworkAccessManager(this);
QUrl strict_url = QUrl::fromEncoded(url.toStdString().c_str(),QUrl::StrictMode);
req.setUrl(strict_url);
m_reply = m_netmanager->head(req);
connect(m_reply, SIGNAL(metaDataChanged()), this, SLOT(fileSize()));
}
void MainWindow::fileSize()
{
qDebug() << "Content Length: " << m_reply->header(QNetworkRequest::ContentLengthHeader);
}
Для дальнейшего использования, пожалуйста, напишите самодостаточный код, который мы можем построить и запустить. – lpapp
@stukennedy вы можете опубликовать ссылку, чтобы можно было проверить, присутствует ли заголовок длины содержимого в заголовке ответа или нет. –
достаточно легко поместить код, который я отправил в новый проект, и построить его (вам просто нужны определения заголовков и включить зависимости), без того, чтобы я помешал сообщению с кодом, который не связан с вопросом. Надеюсь, что все в порядке ... Во всяком случае, см. Ниже решение, просто понял это. – stukennedy