twitter.c ー ①ー2

twitterAPI利用プログラム作成に向けて。

 

① httpメッセージの作成

② tcpでtwitterAPI提供サーバにつなぎ、(https用ポート)sslコネクションも作る

③ リクエストの送信

④ RestAPIではメッセージを全て受信し、解析

  StreamingAPIではメッセージを随時読み込み、解析

 

①ー1 oauth_nonce を作る

①ー2 oauth_timestamp を作る

①ー3 oauth_signature を作る(一番大変)

①ー4 ちょちょいのちょいでできる

 


なお、全て説明したら全体のソースコードも掲載する予定です。

今回はもろくそ簡単です。
oauth_timestampは、UNIX時間(time.hをインクルードしたら使える、time関数で得られる値)を文字にすればいいだけ。
なので、数字から文字に変換するitoa関数を作ることにします。
本来わたし的には、他の〇〇.cにいれたいところですが、
いまいち収まりどころがないので、とりあえずtwitter.c内に用意します。
// long to string
char *itoa(long n){
   char tmp[1000];
   sprintf(tmp, "%ld", n);
   char *rtn = (char *)malloc(sizeof(char) * (strlen(tmp) + 1));
   strcpy(rtn, tmp);
   return rtn;
}
とりあえず大きなバイト数を確保してそこにsprintfで書き込み、
新たに返すための適当なバイトを確保して、そこにコピーします。

あとはメイン関数で
char *pt = itoa(time(NULL));
printf("[time]\n%s\n", pt);
など作れば、下のように出力されると思います。
[time]
1388935240