login
This commit is contained in:
parent
307b8ffae0
commit
9bbc88eca7
5 changed files with 81 additions and 6 deletions
|
@ -3,7 +3,8 @@ TEMPLATE = app
|
|||
QT += qml quick
|
||||
|
||||
SOURCES += main.cpp \
|
||||
tinytinyrss.cpp
|
||||
tinytinyrss.cpp \
|
||||
tinytinyrsslogin.cpp
|
||||
|
||||
RESOURCES += qml.qrc \
|
||||
html.qrc
|
||||
|
@ -23,4 +24,5 @@ OTHER_FILES += \
|
|||
content.js
|
||||
|
||||
HEADERS += \
|
||||
tinytinyrss.h
|
||||
tinytinyrss.h \
|
||||
tinytinyrsslogin.h
|
||||
|
|
|
@ -15,6 +15,26 @@ TinyTinyRSS::~TinyTinyRSS()
|
|||
|
||||
}
|
||||
|
||||
QString TinyTinyRSS::login(QString serverUrl, QString user, QString password)
|
||||
{
|
||||
QVariantMap options;
|
||||
options.insert("op", "login");
|
||||
options.insert("user", user);
|
||||
options.insert("password", password);
|
||||
|
||||
QJsonObject jsonobj = QJsonObject::fromVariantMap(options);
|
||||
QJsonDocument json = QJsonDocument(jsonobj);
|
||||
|
||||
QNetworkAccessManager *manager = new QNetworkAccessManager(this);
|
||||
|
||||
QUrl url(serverUrl + "/api/");
|
||||
QNetworkRequest request(url);
|
||||
request.setHeader(QNetworkRequest::ContentTypeHeader, "application/x-www-form-urlencoded");
|
||||
|
||||
QObject::connect(manager, SIGNAL(finished(QNetworkReply)), this, SIGNAL(replyLogin(QNetworkReply)));
|
||||
manager->post(request, json.toBinaryData());
|
||||
}
|
||||
|
||||
void TinyTinyRSS::doOperation(QString operation, QVariantMap opts) {
|
||||
QVariantMap options;
|
||||
options.insert("sid", this->sessionId);
|
||||
|
@ -35,10 +55,10 @@ void TinyTinyRSS::doOperation(QString operation, QVariantMap opts) {
|
|||
QNetworkRequest request(url);
|
||||
request.setHeader(QNetworkRequest::ContentTypeHeader, "application/x-www-form-urlencoded");
|
||||
|
||||
QObject::connect(manager, &QNetworkAccessManager::finished, this, &TinyTinyRSS::replyFinishedOperation);
|
||||
manager->post(request, json);
|
||||
QObject::connect(manager, SIGNAL(finished(QNetworkReply)), this, SIGNAL(replyFinishedOperation(QNetworkReply)));
|
||||
manager->post(request, json.toBinaryData());
|
||||
}
|
||||
|
||||
void TinyTinyRSS::replyFinishedOperation(QNetworkReply *reply) {
|
||||
|
||||
qWarning() << reply;
|
||||
}
|
||||
|
|
|
@ -13,13 +13,14 @@ class TinyTinyRSS : QObject
|
|||
public:
|
||||
TinyTinyRSS(QString serverUrl, QString sessionId);
|
||||
~TinyTinyRSS();
|
||||
void login();
|
||||
void replyFinishedOperation(QNetworkReply *reply);
|
||||
|
||||
private:
|
||||
QString serverUrl;
|
||||
QString sessionId;
|
||||
|
||||
void doOperation(QString operation, QVariantMap opts);
|
||||
void replyFinishedOperation(QNetworkReply *reply);
|
||||
};
|
||||
|
||||
#endif // TINYTINYRSS_H
|
||||
|
|
32
tinytinyrsslogin.cpp
Normal file
32
tinytinyrsslogin.cpp
Normal file
|
@ -0,0 +1,32 @@
|
|||
#include "tinytinyrsslogin.h"
|
||||
|
||||
TinyTinyRSSLogin::TinyTinyRSSLogin(QObject *parent) :
|
||||
QObject(parent)
|
||||
{
|
||||
}
|
||||
|
||||
void TinyTinyRSSLogin::login(QString serverUrl, QString user, QString password)
|
||||
{
|
||||
QVariantMap options;
|
||||
options.insert("op", "login");
|
||||
options.insert("user", user);
|
||||
options.insert("password", password);
|
||||
|
||||
QJsonObject jsonobj = QJsonObject::fromVariantMap(options);
|
||||
QJsonDocument json = QJsonDocument(jsonobj);
|
||||
|
||||
QNetworkAccessManager *manager = new QNetworkAccessManager(this);
|
||||
|
||||
QUrl url(serverUrl + "/api/");
|
||||
QNetworkRequest request(url);
|
||||
request.setHeader(QNetworkRequest::ContentTypeHeader, "application/x-www-form-urlencoded");
|
||||
|
||||
QObject::connect(manager, SIGNAL(finished(QNetworkReply)), this, SIGNAL(replyLogin(QNetworkReply)));
|
||||
manager->post(request, json.toBinaryData());
|
||||
}
|
||||
|
||||
TinyTinyRSSLogin::replyLogin(QNetworkReply reply)
|
||||
{
|
||||
QString sessionId = "1234";
|
||||
this->parent()->loggedIn(QString(sessionId));
|
||||
}
|
20
tinytinyrsslogin.h
Normal file
20
tinytinyrsslogin.h
Normal file
|
@ -0,0 +1,20 @@
|
|||
#ifndef TINYTINYRSSLOGIN_H
|
||||
#define TINYTINYRSSLOGIN_H
|
||||
|
||||
#include <QObject>
|
||||
|
||||
class TinyTinyRSSLogin : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit TinyTinyRSSLogin(QObject *parent = 0);
|
||||
login(QString serverUrl, QString user, QString password);
|
||||
|
||||
signals:
|
||||
replyLogin(QNetworkReply reply);
|
||||
|
||||
public slots:
|
||||
|
||||
};
|
||||
|
||||
#endif // TINYTINYRSSLOGIN_H
|
Loading…
Add table
Add a link
Reference in a new issue