ニートな夏休み、惰眠を貪るSayahamittです。
さて僕は一応情報系の学科の学生なわけですが、情報と言えば通信、「通信出来ないなんてpoison」と叫ばれる(?)今日このごろ、恥ずかしながらソケットプログラミングはおろか、通信系のプログラミングを一切行ったことがありませんΣ(゚д゚lll)
これでは流石にマズいのでC++の勉強も兼ねてコマンドラインベースのツイッタークライアントでもこさえて見ようかと思います。
まずはソケットプログラミングから!?
とは相成りませんでした。
Twitterクライアントを作るには言わずもがなTwitter APIを使う必要があり、Twitterにアクセスする必要があるわけですが、このTwitter…当然ながらHTTPSでしかアクセス出来ないんですよね…
Twitterクライントを作ろうと思い立って検索すると、多くヒットするのはPHPやJavaを利用する物で、HTTPS通信を実現するために必要なPKI(OpenSSL)関連はもちろん、Twitterへのログイン認証の部分すらライブラリとして配布されているようでとても便利そうで大変ありがt…
くないんですよ…出来ればC/C++のTwitterアクセス系のライブラリが転がっていて欲しかったんですが、そんなものはちょっと探したくらいでは見つかりませんでした。
勉強の為ですからこの状況に歓喜乱舞するべきなんですけれども、まぁ色々と初っ端で躓きました。
何はともあれHTTPSで通信が出来なければ何も始まらないのでOpenSSLのライブラリを落としてきたは良いものの、全く使い方が分からないという有り様。(´・ω・`)
そもそも「そけっと!?何それ美味しいの?」状態ですから、TCPの通信を行う定石的なコードも書けないわけです。しかし、検索で行き着いたIBMのページでHTTPSなWebサイトからHTMLを取得する完動コードをハケーン( ゚д゚ )
BIOやCTXやTrustStore.pem, SSL_library_init();(←サンプルコードにinitが書いてなくて動かず、気づくのに大分掛かった)との激闘の末、何とかTwitterログインページのHTMLを取ってくることが出来ました。
へっぽこ大学生には一日でここまで来るのがやっと…
明日からも遊び、がんばるぞいっ!!
ではでは ノシ~