login working
This commit is contained in:
parent
5101a426c0
commit
7dbf05e2e1
5 changed files with 27 additions and 13 deletions
|
@ -5,9 +5,9 @@ Rectangle {
|
||||||
color: "white"
|
color: "white"
|
||||||
anchors.fill: parent
|
anchors.fill: parent
|
||||||
|
|
||||||
property string serverUrl: serverUrl.getText()
|
property string serverUrl: serverUrl.text
|
||||||
property string userName: userName.getText()
|
property string userName: userName.text
|
||||||
property string password: password.getText()
|
property string password: password.text
|
||||||
|
|
||||||
Column {
|
Column {
|
||||||
width: parent.width
|
width: parent.width
|
||||||
|
|
2
main.qml
2
main.qml
|
@ -30,7 +30,7 @@ ApplicationWindow {
|
||||||
id: serverLogin
|
id: serverLogin
|
||||||
onSessionIdChanged: {
|
onSessionIdChanged: {
|
||||||
login.visible = false;
|
login.visible = false;
|
||||||
server.initialize(serverUrl. sessionId);
|
server.initialize(serverUrl, sessionId);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -16,6 +16,18 @@ void TinyTinyRSS::initialize(const QString serverUrl, const QString sessionId)
|
||||||
mSessionId = sessionId;
|
mSessionId = sessionId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void TinyTinyRSS::reload()
|
||||||
|
{
|
||||||
|
QVariantMap opts;
|
||||||
|
opts.insert("show_excerpt", false);
|
||||||
|
opts.insert("view_mode", "unread");
|
||||||
|
opts.insert("show_content", true);
|
||||||
|
opts.insert("feed_id", -4);
|
||||||
|
opts.insert("skip", 0);
|
||||||
|
|
||||||
|
doOperation("getHeadlines", opts);
|
||||||
|
}
|
||||||
|
|
||||||
TinyTinyRSS::~TinyTinyRSS()
|
TinyTinyRSS::~TinyTinyRSS()
|
||||||
{
|
{
|
||||||
delete mNetworkManager;
|
delete mNetworkManager;
|
||||||
|
|
|
@ -11,18 +11,18 @@
|
||||||
class TinyTinyRSS : public QObject
|
class TinyTinyRSS : public QObject
|
||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
Q_PROPERTY(QList<Post> posts READ posts NOTIFY postsChanged)
|
Q_PROPERTY(QList<Post*> posts READ posts NOTIFY postsChanged)
|
||||||
|
|
||||||
public:
|
public:
|
||||||
TinyTinyRSS(QObject *parent = 0);
|
TinyTinyRSS(QObject *parent = 0);
|
||||||
~TinyTinyRSS();
|
~TinyTinyRSS();
|
||||||
QList<Post> posts() const;
|
QList<Post *> posts() const { return mPosts; }
|
||||||
|
|
||||||
Q_INVOKABLE void initialize(const QString serverUrl, const QString sessionId);
|
Q_INVOKABLE void initialize(const QString serverUrl, const QString sessionId);
|
||||||
Q_INVOKABLE void reload();
|
Q_INVOKABLE void reload();
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void postsChanged(QList<Post>);
|
void postsChanged(QList<Post*>);
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
void reply();
|
void reply();
|
||||||
|
@ -32,7 +32,7 @@ private:
|
||||||
|
|
||||||
QString mServerUrl;
|
QString mServerUrl;
|
||||||
QString mSessionId;
|
QString mSessionId;
|
||||||
QList<Post> mPosts;
|
QList<Post*> mPosts;
|
||||||
QNetworkAccessManager *mNetworkManager;
|
QNetworkAccessManager *mNetworkManager;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -27,9 +27,9 @@ void TinyTinyRSSLogin::login(const QString serverUrl, const QString user, const
|
||||||
QJsonDocument json = QJsonDocument(jsonobj);
|
QJsonDocument json = QJsonDocument(jsonobj);
|
||||||
|
|
||||||
QNetworkRequest request(mServerUrl);
|
QNetworkRequest request(mServerUrl);
|
||||||
request.setHeader(QNetworkRequest::ContentTypeHeader, "application/x-www-form-urlencoded");
|
request.setHeader(QNetworkRequest::ContentTypeHeader, "application/json");
|
||||||
|
|
||||||
QNetworkReply *reply = mNetworkManager->post(request, json.toBinaryData());
|
QNetworkReply *reply = mNetworkManager->post(request, json.toJson());
|
||||||
connect(reply, SIGNAL(finished()), this, SLOT(reply()));
|
connect(reply, SIGNAL(finished()), this, SLOT(reply()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -39,13 +39,15 @@ void TinyTinyRSSLogin::reply()
|
||||||
|
|
||||||
if (reply) {
|
if (reply) {
|
||||||
if (reply->error() == QNetworkReply::NoError) {
|
if (reply->error() == QNetworkReply::NoError) {
|
||||||
QJsonDocument json = QJsonDocument::fromBinaryData(reply->readAll());
|
QJsonDocument jdoc = QJsonDocument::fromBinaryData(reply->readAll());
|
||||||
mSessionId = json.toVariant().toMap().value("session_id").toString();
|
qDebug() << jdoc;
|
||||||
|
//mSessionId = json.toVariant().toMap().value("session_id").toString();
|
||||||
|
//qDebug() << "sessionId: " << mSessionId;
|
||||||
emit sessionIdChanged(mSessionId);
|
emit sessionIdChanged(mSessionId);
|
||||||
} else {
|
} else {
|
||||||
int httpStatus = reply->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt();
|
int httpStatus = reply->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt();
|
||||||
//do some error management
|
//do some error management
|
||||||
qWarning() << "HTTP error: " << httpStatus;
|
qWarning() << "HTTP error: " << httpStatus << " :: " << reply->error();
|
||||||
}
|
}
|
||||||
reply->deleteLater();
|
reply->deleteLater();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue