回复: 有偿求一个阿里云QT上传图片的demo[已解决]
#6 回 XChinux 的帖子 [toby520 04-15 20:44]
XChinux:你用它的代码,用它的库编译个可执行文件。
你自己的Qt代码里QProcess调用这个可执行文件上传文件就行了。 (2019-04-15 18:20)
这个方法太土了 哈哈 有源码 集成即可
#7 [nigoole 04-16 11:16]
你得明白他上传的原理就行了,Qt的QNetworkAccessManager就行!然后url需要配置阿里的一些key值,配置完成,直接往这个地址写数据,完事!
#8 [nigoole 04-16 11:18]
你得明白他上传的原理就行了,Qt的QNetworkAccessManager就行!然后url需要配置阿里的一些key值,配置完成,直接往这个地址写数据,完事!
char *m_buf = NULL;
QFile file(ui->lineEditUpdateFile->text());
if (!file.open(QIODevice::ReadOnly))
{
ui->widgetStautus->SetText(QString("文件打开失败: %1").arg(file.fileName()));
return;
}
int file_len = file.size();
// 文件大小限制,只能上传500KB
if (file_len > 50 * 1024 * 1024)
{
ui->widgetStautus->SetText(QString("文件大小超出范围[1~10MB]"));
file.close();
return;
}
QDataStream in(&file);
m_buf = new char;
in.readRawData( m_buf, file_len);
file.close();
QString strPostData = "/app=";
strPostData += ui->comboBoxAppConf->currentText();
strPostData += "&version=";
strPostData += ui->lineEditVerNum->text();
strPostData += "&file=";
QFileInfo fileInfo(file);
strPostData += fileInfo.fileName();
QNetworkRequest request(QUrl(GetServerConfig(strPostData)));
request.setHeader(QNetworkRequest::ContentTypeHeader, "application/octet-stream");
QByteArray arr = QByteArray(m_buf, file_len);
// 上传信息
 ..
#9 回 nigoole 的帖子 [巫添良 04-16 12:45]
nigoole:你得明白他上传的原理就行了,Qt的QNetworkAccessManager就行!然后url需要配置阿里的一些key值,配置完成,直接往这个地址写数据,完事!
char *m_buf = NULL;
QFile file(ui->lineEditUpdateFile->text());
if (!file. .. (2019-04-16 11:18)
大佬能不能写个完整的程序,网络这块不太熟悉,有酬谢的
#10 回 巫添良 的帖子 [nigoole 04-16 14:20]
后面大神多!