Qt Imgur上传失败

时间:2011-10-19 18:02:51

标签: qt base64 imgur

我有一个像这样的上传者

void uploader::upload() {
    QUrl serviceUrl = QUrl("http://api.imgur.com/2/upload.json");
    QByteArray postData;

    postData.append("key=MY_KEY&");
    postData.append("image=" + file.toBase64());

    QNetworkAccessManager *networkManager = new QNetworkAccessManager(this);
    connect(networkManager, SIGNAL(finished(QNetworkReply*)), this, SLOT(serviceRequestFinished(QNetworkReply*)));
    networkManager->post(QNetworkRequest(serviceUrl), postData);
}

void uploader::serviceRequestFinished(QNetworkReply* reply) {
    qDebug() << "Done" << endl;
    QString response = reply->readAll();

    qDebug() << response;

    QScriptValue sc; 
    QScriptEngine engine;
    sc = engine.evaluate(response);

    qDebug() << sc.property("upload").property("links").property("original").toString();
}

文件是带有我要上传的PNG文件内容的QByteArray。 上传结束时,我收到回复,但上传的图片无效(如果我保存并尝试打开,则会写入该文件无效的PNG图片。)

我做错了什么?

0 个答案:

没有答案