テクノロジー

API 〜Spotify編〜 ②

ヨコチ🦖UGOK's icon'
  • ヨコチ🦖UGOK
  • 2019/11/12 10:00

 

UGOKのヨコチです🦖

ここ1週間くらい早起きしようと心がけたら1時間早く起きれるようになりました😺🎶嬉しいです

今回も、前回に引き続きAPIについて書きます!

 

 

APIは簡単に言うと、欲しい情報を外部から取ってくるもの、です。

前回のブログでは、SpotifyのAPIを使用することに決めました。そして、そのAPIを使用するにあたって大いに参考になるであろう、Spotify Web API Tutorialの翻訳およびまとめをしました。

 

今回も前回に引き続き、Spotify Web API Tutorial の翻訳およびまとめをしようとおもいます😼❕

 

 

Prepare Your Environment(環境を準備する)

アプリを登録し、環境をセットアップする。

※既にセットアップに自信がある場合、先に進み、GitHubからAuthentication Flow example app(認証フローのサンプルアプリ)のコードをダウンロードする。

①このチュートリアルでは、サーバー側のアプリケーションを作っているため、適切なソフトウェアプラットホームが必要である。このために、Node.jsを使う。もし、まだNode.jsをインストールしていないのならば、環境に適した設定でダウンロード、そしてインストール。

②Node.jsがインストールされ、正しくセットアップされているかテストする。お気に入りのテキストエディタで次のコードと共に単純なserver.jsをつくる。

Content image

/* 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というフォルダにファイルを保存し、コマンドプロンプトでファイルを実行する。

Content image

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

Content image

①コマンドプロンプトウィンドウでCtrl+Cを押し、サーバーを強制終了させる。これで、Node.jsの設定が完了・確認された。もし、上記の例を動作させることができなかったのならば、続行する前にトラブルシューティングと修正を行う必要がある。

エンドポイントのリファレンスページで、リクエストの例についてcURL構文を参照する。このチュートリアルを完了させるためにcURLは必要ではないが、アプリケーションを開発する際に役に立つツールである可能性がある。Spotify Webサービスに対して要求を作成し、それらが返すレスポンスを確認することに役立つ。必要であれば、SSLのサポートがついているバージョンをインストール。

 

Create a Project Folder and Files(プロジェクトフォルダとファイルを作成する)

①Node.jsをインストールし、アプリケーション用のプロジェクトフォルダをつくる。そして、GitHubリポジトリからOAuthサンプルをダウンロードまたは複製する。

②OAuthサンプルのコードは、express(表現)、request(要求)、querystring(クエリ文字列)のパッケージに依存する。作られたフォルダの中に次のコマンドを実行し、依存関係をインストールする!

Content image

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

 

 

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

 

Article tip 0人がサポートしています
獲得ALIS: Article like 25.68 ALIS Article tip 0.00 ALIS
ヨコチ🦖UGOK's icon'
  • ヨコチ🦖UGOK
  • @yoch
twitter @ugok_2

投稿者の人気記事
コメントする
コメントする
こちらもおすすめ!
Eye catch
他カテゴリ

機械学習を体験してみよう!(難易度低)

Like token Tip token
124.82 ALIS
Eye catch
クリプト

NFT解体新書・デジタルデータをNFTで販売するときのすべて【実証実験・共有レポート】

Like token Tip token
121.79 ALIS
Eye catch
テクノロジー

彼女でも分かるように解説:ディープフェイク

Like token Tip token
32.10 ALIS
Eye catch
クリプト

ジョークコインとして出発したDogecoin(ドージコイン)の誕生から現在まで。注目される非証券性🐶

Like token Tip token
38.31 ALIS
Eye catch
クリプト

約2年間ブロックチェ-ンゲームをして

Like token Tip token
161.20 ALIS
Eye catch
クリプト

Bitcoinの価値の源泉は、PoWによる電気代ではなくて"競争原理"だった。

Like token Tip token
159.32 ALIS
Eye catch
テクノロジー

なぜ、素人エンジニアの私が60日間でブロックチェーンゲームを制作できたのか、について語ってみた

Like token Tip token
270.93 ALIS
Eye catch
テクノロジー

オープンソースプロジェクトに参加して自己肯定感を高める

Like token Tip token
85.05 ALIS
Eye catch
クリプト

17万円のPCでTwitterやってるのはもったいないのでETHマイニングを始めた話

Like token Tip token
46.60 ALIS
Eye catch
他カテゴリ

ALISのシステム概観

Like token Tip token
5.00 ALIS
Eye catch
ゲーム

ドラクエで学ぶオーバフロー

Like token Tip token
30.10 ALIS
Eye catch
テクノロジー

iOS15 配信開始!!

Like token Tip token
7.20 ALIS