首页| 论坛| 消息

回复: 有偿求一个阿里云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);
    // 上传信息
   &#16 ..
#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]
后面大神多!

<< 1 2 3 4 >> (2/4)

回复 发表
主题 版块