upload image to my own server
Some checks failed
Packaging(Linux) / Build deb on debian-10 amd64 (push) Has been cancelled
Packaging(Linux) / Build deb on debian-11 amd64 (push) Has been cancelled
Packaging(Linux) / Build deb on ubuntu-20.04 amd64 (push) Has been cancelled
Packaging(Linux) / Build deb on ubuntu-22.04 amd64 (push) Has been cancelled
Packaging(Linux) / Build deb on debian-10 arm64 (push) Has been cancelled
Packaging(Linux) / Build deb on debian-11 arm64 (push) Has been cancelled
Packaging(Linux) / Build deb on debian-10 armhf (push) Has been cancelled
Packaging(Linux) / Build deb on debian-11 armhf (push) Has been cancelled
Packaging(Linux) / Build rpm on fedora-35 x86_64 (push) Has been cancelled
Packaging(Linux) / Build rpm on fedora-36 x86_64 (push) Has been cancelled
Packaging(Linux) / Build rpm on opensuse-leap-15.2 x86_64 (push) Has been cancelled
Packaging(Linux) / Build appimage on ubuntu-20.04 (push) Has been cancelled
Packaging(Linux) / Build flatpak on ubuntu-20.04 (push) Has been cancelled
Packaging(Linux) / Build snap on ubuntu-20.04 (push) Has been cancelled
Packaging(MacOS) / macOS Monterey 12 (push) Has been cancelled
Packaging(Windows) / VS 2019 x64-installer (push) Has been cancelled
Packaging(Windows) / VS 2019 x64-portable (push) Has been cancelled
Packaging(Windows) / VS 2019 x86-installer (push) Has been cancelled
Packaging(Windows) / VS 2019 x86-portable (push) Has been cancelled
Building(CMake) / ubuntu-22.04 (push) Has been cancelled
Building(CMake) / windows-build (map[artifact:Windows-MSVC.tar.xz cc:cl cxx:cl environment_script:C:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Auxiliary/Build/vcvars64.bat name:Windows 2019 MSVC os:windows-2019]) (push) Has been cancelled
test-clang-format / build (push) Has been cancelled
Some checks failed
Packaging(Linux) / Build deb on debian-10 amd64 (push) Has been cancelled
Packaging(Linux) / Build deb on debian-11 amd64 (push) Has been cancelled
Packaging(Linux) / Build deb on ubuntu-20.04 amd64 (push) Has been cancelled
Packaging(Linux) / Build deb on ubuntu-22.04 amd64 (push) Has been cancelled
Packaging(Linux) / Build deb on debian-10 arm64 (push) Has been cancelled
Packaging(Linux) / Build deb on debian-11 arm64 (push) Has been cancelled
Packaging(Linux) / Build deb on debian-10 armhf (push) Has been cancelled
Packaging(Linux) / Build deb on debian-11 armhf (push) Has been cancelled
Packaging(Linux) / Build rpm on fedora-35 x86_64 (push) Has been cancelled
Packaging(Linux) / Build rpm on fedora-36 x86_64 (push) Has been cancelled
Packaging(Linux) / Build rpm on opensuse-leap-15.2 x86_64 (push) Has been cancelled
Packaging(Linux) / Build appimage on ubuntu-20.04 (push) Has been cancelled
Packaging(Linux) / Build flatpak on ubuntu-20.04 (push) Has been cancelled
Packaging(Linux) / Build snap on ubuntu-20.04 (push) Has been cancelled
Packaging(MacOS) / macOS Monterey 12 (push) Has been cancelled
Packaging(Windows) / VS 2019 x64-installer (push) Has been cancelled
Packaging(Windows) / VS 2019 x64-portable (push) Has been cancelled
Packaging(Windows) / VS 2019 x86-installer (push) Has been cancelled
Packaging(Windows) / VS 2019 x86-portable (push) Has been cancelled
Building(CMake) / ubuntu-22.04 (push) Has been cancelled
Building(CMake) / windows-build (map[artifact:Windows-MSVC.tar.xz cc:cl cxx:cl environment_script:C:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Auxiliary/Build/vcvars64.bat name:Windows 2019 MSVC os:windows-2019]) (push) Has been cancelled
test-clang-format / build (push) Has been cancelled
This commit is contained in:
@@ -1,6 +1,7 @@
|
|||||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||||
// SPDX-FileCopyrightText: 2017-2019 Alejandro Sirgo Rica & Contributors
|
// SPDX-FileCopyrightText: 2017-2019 Alejandro Sirgo Rica & Contributors
|
||||||
|
|
||||||
|
#include <iostream>
|
||||||
#include "imguruploader.h"
|
#include "imguruploader.h"
|
||||||
#include "src/utils/confighandler.h"
|
#include "src/utils/confighandler.h"
|
||||||
#include "src/utils/filenamehandler.h"
|
#include "src/utils/filenamehandler.h"
|
||||||
@@ -35,7 +36,7 @@ void ImgurUploader::handleReply(QNetworkReply* reply)
|
|||||||
QJsonDocument response = QJsonDocument::fromJson(reply->readAll());
|
QJsonDocument response = QJsonDocument::fromJson(reply->readAll());
|
||||||
QJsonObject json = response.object();
|
QJsonObject json = response.object();
|
||||||
QJsonObject data = json[QStringLiteral("data")].toObject();
|
QJsonObject data = json[QStringLiteral("data")].toObject();
|
||||||
setImageURL(data[QStringLiteral("link")].toString());
|
setImageURL(data[QStringLiteral("url")].toString());
|
||||||
|
|
||||||
auto deleteToken = data[QStringLiteral("deletehash")].toString();
|
auto deleteToken = data[QStringLiteral("deletehash")].toString();
|
||||||
|
|
||||||
@@ -64,23 +65,28 @@ void ImgurUploader::upload()
|
|||||||
QByteArray byteArray;
|
QByteArray byteArray;
|
||||||
QBuffer buffer(&byteArray);
|
QBuffer buffer(&byteArray);
|
||||||
pixmap().save(&buffer, "PNG");
|
pixmap().save(&buffer, "PNG");
|
||||||
|
QString encoded = buffer.data().toBase64();
|
||||||
|
|
||||||
|
QJsonObject obj;
|
||||||
|
obj["img"] = "data:image/png;base64," + encoded + "==";
|
||||||
|
QJsonDocument doc(obj);
|
||||||
|
QByteArray data = doc.toJson();
|
||||||
|
|
||||||
QUrlQuery urlQuery;
|
QUrlQuery urlQuery;
|
||||||
urlQuery.addQueryItem(QStringLiteral("title"), QStringLiteral(""));
|
urlQuery.addQueryItem(QStringLiteral("title"), QStringLiteral(""));
|
||||||
QString description = FileNameHandler().parsedPattern();
|
QString description = FileNameHandler().parsedPattern();
|
||||||
urlQuery.addQueryItem(QStringLiteral("description"), description);
|
urlQuery.addQueryItem(QStringLiteral("description"), description);
|
||||||
|
|
||||||
QUrl url(QStringLiteral("https://api.imgur.com/3/image"));
|
QUrl url(QStringLiteral("http://127.0.0.1/image"));
|
||||||
url.setQuery(urlQuery);
|
url.setQuery(urlQuery);
|
||||||
QNetworkRequest request(url);
|
QNetworkRequest request(url);
|
||||||
request.setHeader(QNetworkRequest::ContentTypeHeader,
|
request.setHeader(QNetworkRequest::ContentTypeHeader, "application/json");
|
||||||
"application/application/x-www-form-urlencoded");
|
|
||||||
request.setRawHeader("Authorization",
|
request.setRawHeader("Authorization",
|
||||||
QStringLiteral("Client-ID %1")
|
QStringLiteral("Client-ID %1")
|
||||||
.arg(ConfigHandler().uploadClientSecret())
|
.arg(ConfigHandler().uploadClientSecret())
|
||||||
.toUtf8());
|
.toUtf8());
|
||||||
|
|
||||||
m_NetworkAM->post(request, byteArray);
|
m_NetworkAM->post(request, data);
|
||||||
}
|
}
|
||||||
|
|
||||||
void ImgurUploader::deleteImage(const QString& fileName,
|
void ImgurUploader::deleteImage(const QString& fileName,
|
||||||
|
|||||||
Reference in New Issue
Block a user