多数のクライアントに対して少数のサーバが対応する
クライアント=主人 サーバー=従者
サーバーは役割ごとに存在する クライアントはユーザーに合わせて様々な役割
WEBサーバーとブラウザも同じような関係
インターネットでは膨大なユーザーがスマートフォンやネットでブラウザでネットに接続し世界中のWEBサーバーに接続している
クライアントであるWebサーバーとブラウザがデーターをやり取りする手段
WebページはHTTPを基準にやり取りする
Webサーバーごとにブラウザを用意しないといけなくなるため 技術的な標準ルールで標準化されている
そのため、1つのブラウザですべてWebページを表示できる・開発者やデザイナーはHTMLを覚えるだけですべてのWebページを作れるようになる
URIとはリソース(資源)を指定する
:// はhttpのオプション
メールアドレスでも使われている 全世界で統一されている
通常はこのポート番号を省略する。
1つのコンピューター上で2つのサーバーアプリケーションが稼働している場合にはそれぞれのポート番号を指定する jangoやRuby on rails等のWebアプリケーションフレームワークの講座では複数のサーバーが動作していたのでポート番号を指定する
単純なWebサーバーでは静的なファイルの位置を表しているので、シェルコマンドで指定するファイルと同じように記述できる。Webフレームワーク等を利用した高度なWebサーバーではファイル構成と完全には一致していないがデータ構成等に合わせた分かりやすいパスを利用する
&記号で区切り複数のパラメータを渡せる keyと値のセットになっておりkeyがパラメータ名になっている
htmlでanchorタブやIT属性を指定しておくとフラグメントでWeb上の特定の位置にジャンプできる
このようなHTMLもURIやHTTPと同じように標準化されている 標準規格の内容は少しずつ成長しているがどのブラウザでもある程度同じように表示できるように日々努力が続けられている
紙のページは手動で探す。ハイパーテキスト検索をするとそれに関連づいたページを表示、ハイパーテキストはそれをWebページで実現させるための物。
見出しにリンクを追加
<a href='index.php'></a>
親要素のコンテントに子要素が入っていないといけない。入れ子=ネスト(nest?)とも呼ぶ
特定の位置に何か挿入、埋め込むために使用
属性=attribute ここではリンク先のアドレスを属性として表示。 属性値は「’」か「”」で囲む
アフィリエイト作業の効率も可能 この他、Facebook・twitter そして機械学習のためのAPIもある。
API=ソフトウェアやアプリケーションなどの一部を外部に向けて公開することにより、第三者が開発したソフトウェアと機能を共有できるようにしてくれるもの
組み合わせによって高度なwebサービスを提供できるかも=マッシュアップ
提供側は、APIの連携前に必ずユーザーの承諾を得る必要がある。ユーザー側も連携サービスを使うにはユーザー情報が共有されることを許可する必要がある。(どの情報が共有されるか、などはサービスにより異なる。)
WEBAPIを使うときに、APIキー(アクセスキー)・APIシークレットキー利用の注意が必要。APIキーはログインの際のID名にあたる部分、APIシークレットはパスワードのようなもの。
システム開発を分離できる
システム開発を分離しないと、相手側がAPIを変更したら自分もAPIを呼び出すプログラム変更しないといけない。APIが固定していたら Webサービスが独立し変更等できる。
コンポーネント毎にAPIを用意しシステムが分離されている=マイクロ?サービス
スケーラビリティを確保=拡張しやすくなる
JSON+の記載→HTTPで送受信できたりする
多くのプログラミン言語で採用されている この2つを理解していれば新しいWebAPIを利用し始める時も学習の手間を大きく省ける
❶クライアント/サーバモデル=WEbアクセス
ステートレスもhttp特徴の1つだった
➋httpのget、 post メソッドのこと。少数のメソッドを定義することでシステムをシンプルに。
❸これがWebアクセスのURIに対応している。URIを利用することでWebサービス内に膨大なメソッドがあっても他のリソースと区別して利用できる
Restの原則に沿ったWebAPIを レストフルなWebAPIという。柔軟で拡張性の高いWebサービスを作ることができる
⇩レストフルでない例
パスでbbs.phpを呼び出しクエリで掲示板の動作をcommandとして呼び出す。しかしJavaで書き直すとbbsphpが変わってしまう。記事一覧でなく投稿者一覧を取り出すときは全く違うURLを紹介しなくてはいけない。記事を紹介したくてもURIが変わると紹介リンクも書き換えなくてはいけない。 webサービスのリソースを表す統一的な方式を持たないとこのような事態起こる
⇩レストの原則に沿った場合
bbsphpの代わりにbbsというパスにアクセスしている これでURIは特定のプログラミング言語に依存しなくなった また記事の一覧にアクセスする際はarticlesでアクセス、編集フォームはeditで呼び出す。個別の記事→GETメソッド 記事の更新→POSTメソッドでアクセス。投稿者情報にアクセスしたい際はarticleの代わりにuser 、記事のカテゴリならcategory
リソース=記事(掲示板で) HTMLのフォームはGET・POSTしか対応していない、そのためPUT・DELETEはPOSTメソッドで代用する
~感想~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
無料分は終了しました
勉強してきたからこそですが内容がすんなり入ってきました
以前もしたことありますがあまり頭に入ってこなかったです
声優さんの声の特徴と 私自身が前知識がないのでところどころ聞き取れていない可能性が・・その部分は?をつけています。
一部参照しました
https://www.sejuku.net/blog/87955?cid=top_87955_introduction