PenguinがWorkWorkする blog

ネット上で気になることや、android等について書くブログ

URLにクエリを追加する方法(QT)

oauth認証について書いていた時のメモ。

QTで参考にしているサイトを見てると、自力でqueryを作ってるところが多い。
メソッドに頼らなければそんな感じでいいのかなぁと思いつつ、
真似して書いているとプログラマの先輩から
「それ、QUrlQuery使えばいい!!」「コードは綺麗じゃないと!!」
とお叱りを受けました・・・。

だがしかし!
そんな便利なメソッドに頼る甘い世界んじゃないんだよ!!!!と心のなかで叫んで断固拒否。
そもそもwebアプリケーションのことを何もわかってないので安直に使うのもどうかと思い、
押し切って、Map書いてiterator回して見て思った!


『うん、QUrlQueryが楽・・・。』


コードはこんなかんじです。

続きを読む

QTを使ったネットワーク上の情報取得

Twitter関連で触ってみたい!!
と思ったけど、QTのネットワーク関連に触れてなかったのでメモ。

大事なのはQNetworkAccessManager::QRequestでリクエストして、QNetworkAccessManager::getで取得する時はconnectしないと受け取れない。


getで取得したものは、直接格納するかポインタで参照できると思ったらできないらしいですね・・・。

あとQUrlの部分は普通にStringでセットすればいいのかな~と思ってたら、QUrlってオブジェクトがあるんですね・・・。
オブジェクトが受け取れるならURLの他にも用途があるってことなのかな。

今日はこのへんで・・・。

#include "mainwindow.h"
#include "ui_mainwindow.h"

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    manager = new QNetworkAccessManager();
    txtview = ui->txtView;
    QMessageBox* mbox = new QMessageBox(this);
    mbox->setText(QString("test"));
    mbox->show();
    QObject::connect(mbox, SIGNAL(buttonClicked(QAbstractButton *)),this,SLOT(mbox_Btn_clicked()));
    connect(manager, SIGNAL(finished(QNetworkReply*)),this,SLOT(Reply(QNetworkReply*)));

}

MainWindow::~MainWindow()
{
    delete ui;
}

void MainWindow::on_Btn_clicked()
{

}
void MainWindow::mbox_Btn_clicked()
{
    QString souce("http://www.google.co.jp");
    QUrl url(souce);
    QNetworkRequest request(url);
    manager->get(request);
}

void MainWindow::Reply(QNetworkReply *reply)
{
   QByteArray Response = reply->readAll();
   txtview->setText(QString::fromUtf8(Response));


}

QTでauthするためのメモ

QTで暗号化はすでにクラスとして追加されてたみたい?

Qt 5.1 に HMAC 対応が入っていたのでメモ - Qt 5 の未来は明るいブログ

Twitter API を OAuth で認証するスクリプトを 0 から書いてみた - trial and error

暗号化について(OpenSSLとQT Framework)

一応はサーバー屋さんでしたが暗号化について何も知らなかったので、メモ
単純にハッシュ値だしてネゴってるだけ???と勝手に思いつつ覚える。

OpenSSLライブラリを使ってプログラミング(1) - 再帰の反復

C++/QtでOAuthを使ってTwitterに投稿する - mole-studio

gitが息してない

git環境の準備してみたけど、
push時にWriteing...で処理してるが次へ進まない・・・。
サーバ側の通信がうまく行ってないのかな?


サーバ:GNU/debian, git ver 1.7.10
クライアント/ windows, msysgit 1.8.4


githubも考えたけど、オープンさせる段階じゃないからとりあえずローカルでとは思ったが失敗だった・・・。

接続先が自分のサーバではないから、あまり自由にイジれないよ・・・。
自分の環境でもないのに繋がらないって文句もあまり言えない。


そこで、勢いを財力に頼ってサーバごと買ってみた。
https://www.modmypi.com/shop/raspberry-pi/raspberry-pi-and-modmypi-case:modmypi

(GitHub使えばよかったなんてクラスのみんなには内緒だよッ!)


購入から、構築と接続までまた書くと思います。