我正在寻找如何使用Qt上的HTTP POST方法将文件上传到服务器的基本代码示例.
我的任务:我有简单的Qt程序,我需要从本地主机中选择任何图像文件并将其上传到服务器.选择部分和GUI很简单,我已经完成了,但是使用POST上传我很困惑.另外我不得不说,没有授权上传文件.
如果有人已经看过这个主题了?
PS:我之所以要求而不是自我编码的原因是时间,我需要快速获得这种方法.
谢谢,我方的所有成功解决方案都将在此处发布给其他人.
补充:这是我的代码,但还不行.上传网站位于此处.
void CDialog::on_uploadButton_clicked() {
QFileInfo fileInfo(absPathLineEdit->text());
if (!fileInfo.exists()) {
QMessageBox::information(this,
tr("Information"),
tr("File doesn't exists! Please, select another image."));
return;
}
file = new QFile(fileInfo.filePath());
if (!file->open(QIODevice::ReadOnly)) {
QMessageBox::information(this,
tr("Information"),
tr("Unable to open file for reading!"));
return;
}
QString host = "http://data.cod.ru";
QUrl url(host);
QHttp::ConnectionMode mode = QHttp::ConnectionModeHttp;
http->setHost(url.host(), mode, (url.port() == -1) ? 80 : url.port());
QHttpRequestHeader header("POST", "/", 1, 1);
header.setValue("Host", "data.cod.ru");
header.setValue("Content-type", "multipart/form-data, boundary=AaB03x");
header.setValue("Cache-Control", "no-cache");
header.setValue("Accept", …
Run Code Online (Sandbox Code Playgroud)