#はじめに
今回、この記事を書かせて頂いたのは「C言語でTwitterできたらなぁ」と思って調べていたらliboauthなる言葉が出たので調べると以下のようにしか出てこず悪戯に疑問を増されるという。
まぁよくある事故があったので、ならば私がひとつのページにするっとまるっとお見通しという感じに書き纏めようと思ったからです。
C実装。 libOauthはOAuth標準に従ってURLをエンコードし、HTTPリクエストのデータに署名する機能を提供します。
*注意事項
- 本記事はlibOauthの説明を行っている上記サイトの説明を初心者にも理解可能になるように翻訳したものです。
- ふざけてなどいません(絶対に)
- 執筆者は初心者なので間違っていたら教えてください。
#liboauthとは
サーバーとクライアントのやり取りであるHTTPリクエストをC言語を用いて行う際に必要なOAuthと呼ばれるシステムの実装を行うためのもの
#サーバーとは
ネット等に接続が可能な多大な容量を持つ装置のようなもの
遠方からネットを介して接続可能な巨大ポケットWi-Fiみたいなもの
##ネットとは
検索したり、動画見たりできるもの
基本はPCやタブレット、携帯(以下端末)などを用いて他社が運営する有料サービスを利用して接続が可能
##ポケットWi-Fiとは
上記のネットに接続する際に端末からの通信を衛生等へ直接に行うのでは無く、経過地点を設けることにより円滑なネット利用が行えるようにサポートするための物
設定が比較的に簡単なので通信対象端末を気軽に増やせる。
#クライアントとは
サーバーに接続する人
サーバー目線でのお客さんであるネット利用者
#HTTPリクエストとは
サーバーとクライアントが行う通信手段
*HTTP参考ページ様
メッセージヘッダとメッセージボディからなる。
送信の際にはURLエンコーディングと呼ばれるものが必要。
##メッセージヘッダとは
HTTPリクエストの構造要素の一つ
リクエストヘッダとリクエストラインからなる。
###リクエストヘッダとは
メッセージヘッダの二行目以降に書かれるリクエストの情報や属性が記された部分
###リクエストラインとは
メッセージヘッダの一行目に書かれる部分
- リクエストメソッド
- リクエストURL
- HTTPバージョン
以上の要素で構成される。
####リクエストメソッドとは
当HTTP通信のリクエスト手段(主にGETかPOSTかを問われる)
#####GETとPOSTとは
当HTTP通信での通信目的などによって使い分けるメソッド
######GET
サーバーからのデータ取得に用いる
######POST
サーバーへのデータ登録に用いる
####リクエストURLとは
当HTTP通信が目的としている情報や動作情報は含まれているサーバー内の対象のリソース
####HTTPバージョンとは
当HTTPのバージョン宣言
##メッセージボディとは
POSTなどでデータを送信する際に当該データを記載する箇所
記載データの記述法は用途によって異なるため本記事では割愛させて頂きます。
*GETではメッセージボディは記載しません(恐らくは使用目的が要因)
##URLコーディングとは
HTTPリクエストで日本語等を送信する際に16進数を用いて表現する手法
パーセントコーディングともいう
#C言語とは
プログラミング言語の一つ
コンパイラ言語と呼ばれる物の一つで実行までにコンパイルと呼ばれる機械が判読可能な文体へとテキスト内容を翻訳する手順を要する。
他のプログラミング言語における基礎を含んでいる。
#OAuthとは
ユーザーがサービス利用のために一時的に情報をクライアントに渡す際に、その事項に対してのユーザー承認が必要になる。その承認を行うのはクライアント側なので利用時に認可サーバー等にユーザー認証を求めてもらうために実装が必要となる。
・・・以上でliboauthについての説明文の説明を終わります!!
起立!
気をつけ!!
礼ッ!!!
ありがとうございました!!!!