

UGOKのヨコチです🦖
ここ1週間くらい早起きしようと心がけたら1時間早く起きれるようになりました😺🎶嬉しいです
今回も、前回に引き続きAPIについて書きます!

APIは簡単に言うと、欲しい情報を外部から取ってくるもの、です。
前回のブログでは、SpotifyのAPIを使用することに決めました。そして、そのAPIを使用するにあたって大いに参考になるであろう、Spotify Web API Tutorialの翻訳およびまとめをしました。
今回も前回に引き続き、Spotify Web API Tutorial の翻訳およびまとめをしようとおもいます😼❕

アプリを登録し、環境をセットアップする。
※既にセットアップに自信がある場合、先に進み、GitHubからAuthentication Flow example app(認証フローのサンプルアプリ)のコードをダウンロードする。
①このチュートリアルでは、サーバー側のアプリケーションを作っているため、適切なソフトウェアプラットホームが必要である。このために、Node.jsを使う。もし、まだNode.jsをインストールしていないのならば、環境に適した設定でダウンロード、そしてインストール。
②Node.jsがインストールされ、正しくセットアップされているかテストする。お気に入りのテキストエディタで次のコードと共に単純なserver.jsをつくる。

/* HTTPライブラリを読み込む */
・var http = require('http'); //httpオブジェクトのロード
requireは、一般的にモジュール化されたJavaScriptファイルを読み込むために使われる。(※Node.jeのようなサーバサイドでJavaScript単体を実行する場合、scriptタグを使うことができないのでrequireを用いる。)
/* 応答を処理するHTTPサーバーをつくる */
・http.createServer(function(request, response) { //リクエストを受け取った時の処理
第1引数としてrequestオブジェクトを渡す。これの正体は、http.IncomingMessageというオブジェクトで、クライアントからのリクエストに関する機能がまとめられている。
第2引数としてresponseオブジェクトを渡す。これの正体は、http.serverResponseというオブジェクトで、サーバーからクライアントへ戻されるレスポンスに関する機能がまとめられている。
このrequestとresponseを使い、リクエストを受けた時の対処を作成する。・response.writeHead(200, {"Content-Type": "text/plain"}); //ヘッダー情報の書き出し
writeHeadは、responseオブジェクトのメソッドで、ヘッダー情報をレスポンスに書き出すものである。第1引数にはステータスコードを指定し、第2引数にヘッダー情報を連想配列でまとめたものを指定する。今回、"Content-Type"というヘッダー情報に"text/plain"という値を設定している。これはレスポンスとして返送するコンテンツの種類を示すヘッダー情報であり、これにより「このコンテンツは標準テキストである」ということがクライアントに伝えられる。
・response.write("Hello World"); //コンテンツの書き出し
whiteでは、ヘッダー情報の後にボディ部分となるコンテンツの書き出しを行なっている。引数に指定した値がボディ部分のコンテンツとして書き出される。
・response.end(); //コンテンツの完了
・}).listen(8888); //待ち受けスタート
listenメソッドを実行することにより、サーバーは待ち受け状態となり、クライアントからリクエストがあればそれを受け取り処理するようになる。引数にはポート番号を指定している。
ーーー「初心者のための Node.jsプログラミング入門」より引用
このコードはローカルマシーン上に単純なHTTPサーバーを作る。
①njtestというフォルダにファイルを保存し、コマンドプロンプトでファイルを実行する。

①ブラウザを開き、URL localhost:8888に移動する。ブラウザウィンドウに”Hello World”という文字が表示される。

①コマンドプロンプトウィンドウでCtrl+Cを押し、サーバーを強制終了させる。これで、Node.jsの設定が完了・確認された。もし、上記の例を動作させることができなかったのならば、続行する前にトラブルシューティングと修正を行う必要がある。
※エンドポイントのリファレンスページで、リクエストの例についてcURL構文を参照する。このチュートリアルを完了させるためにcURLは必要ではないが、アプリケーションを開発する際に役に立つツールである可能性がある。Spotify Webサービスに対して要求を作成し、それらが返すレスポンスを確認することに役立つ。必要であれば、SSLのサポートがついているバージョンをインストール。
①Node.jsをインストールし、アプリケーション用のプロジェクトフォルダをつくる。そして、GitHubリポジトリからOAuthサンプルをダウンロードまたは複製する。
②OAuthサンプルのコードは、express(表現)、request(要求)、querystring(クエリ文字列)のパッケージに依存する。作られたフォルダの中に次のコマンドを実行し、依存関係をインストールする!

①インストールが完了したならば、プロジェクトフォルダにnode_modulesというサブフォルダが含まれていることを確認する。そして、そのフォルダに少なくともそれらのパッケージが含まれていることを確認する。

初めて見る単語・用語がわんさかでてきて頭が混乱状態です・・・し、たった6行でHTTPサーバーを作ることができるのか・・・・と感動しています・・・。よくわからないけどすごい・・・・・。










