30代専業主婦の独学エンジニア挑戦ブログ

実務未経験の30歳の専業主婦が独学でエンジニアを目指すブログです

「基礎からのWebアプリケーション開発入門」を読みました

勉強記録 

今日は「基礎からのWebアプリケーション開発入門」を読みました。

最近Webの基礎について学んでいたので、復習とさらに知識を深めることができました。

新しく学んだことを中心にまとめます。

 

 <第1章>

URL

URLについてはこちらの記事にまとめています。

 

programming-kanamama.hatenablog.com

 

TCPとソケット

ブラウザとWebサーバはネットワークを経由して通信を行うが、この通信にTCPというプロトコルを使用する。
TCPを用いた通信を行うには、ソケットが必要。
 
ソケットによる通信の流れは
1. サーバ側でソケットを作り、クライアントからの接続を待ち受ける。
2.クライアント側でソケットを作り、サーバのホストとポートを指定して接続する。
こうすることで、サーバとクライアントの間に通信可能な伝送路が作られる。
 
(ファイルディスクプリタ)
ファイルディスクプリタ(FD)とは、UNIXにおいてファイルやストリームへの参照を示す番号。
簡単に言えば、ファイルに割り振られる番号で、ファイルを識別するための目印。
Linuxは全てファイルで管理しているので、全ファイルを管理しやすいようにファイルディスクリプタがある。
もちろんソケットにもファイルディスクリプタがある。ファイルディスクリプタには上限がある。
 

HTTP

 HTTPについてはこちらの記事にまとめています。

programming-kanamama.hatenablog.com

 

RFCとはなにか

IETFが発行している、インターネットにおけるプロトコルとかを決める規格書のようなもの。
 

リファラ

あるページのリンクをクリックしてべ別のページに遷移したときの、遷移元のページのURLのこと。
 

ユーザエージェント

ページを閲覧するときに発信する、各ブラウザが使用しているパソコンのブラウザやOSの情報のこと。
ユーザエージェントを利用することで、パソコンとスマートフォンによって表示するページの切り替えが行われている。
 
 

<第2章> 

URLエンコードに対応する

URLに使えない文字はURLエンコードしてからサーバに送る。
パーセントエンコーディングはURLエンコードの一部と考えればOK。
 

<第3章>

GETとPOSTの違い

HTTPのメソッドはGETとPOSTで使い分ける
 
 GET
HTTP通信で、サーバから情報を取得してくるときに使用する
このときに送信するURLの末尾につける文字列をクエリストリングと呼ぶ。
「キー=値」の形式で、「&」で区切られている。
送信するデータがアドレスバーに表示されるので、他人に見られたくない情報などはGETではだめ。
 
POST
HTTP通信で、サーバにデータを登録するときに使用する
データ量が多い時や、他人に見られてはいけない情報の時に使用。
POSTでサーバにデータを送る時は、リクエストボディにデータが記述される。
 

<第4章>、< 第5章>

Cookieとセッションについてはこちらの記事にまとめています。programming-kanamama.hatenablog.com

 

<第6章>

OSI参照モデル

ネットワーク標準のために定められたOSIという階層モデル。ネットワークの概念の説明には今でもよく使われる。

インターネット・プロトコル・スイート

現在のインターネットで現実的に使われている階層構造が「インターネット・プロトコル・スイート」である。
OSI参照モデルにおける物理層データリンク層がリンク層、ネットワーク層がインターネット層
トランスポート層はそのまま、その上はまとめてアプリケーション層になったと考えれば良い。

f:id:programming_kanamama:20200328113745j:plain

インターネット・プロトコル・スイート
 

プロキシサーバとは

サーバとサーバの間の中間サーバのこと。
キャッシュによりアクセスの高速化を図ったり、有害サイトの遮断や通信の監視を行うことができる。
 

SSL(TLS)とは

SSLはインターネット上でセキュアな通信を行うためのプロトコル
httpがTCPなのに対して、httpsSSLで通信を行う。
TLSSSLの次世代規格。厳密に言うと別物だが、どちらもセキュアな通信を行うためのプロトコルである。
 

公開鍵暗号方式

暗号を作成する行為を暗号化、元のデータに戻すことを復号という。暗号鍵(鍵)は、暗号化もしくは復号するときに使用するデータのこと。
 
公開鍵暗号方式では、公開鍵秘密鍵という2つの鍵を使用する。
公開鍵で行われた暗号化は、その公開鍵と組になってい秘密鍵でないと復号できない。
 

DOM操作とは

DOMとは、HTMLの要素の階層構造を、木構造として操作するためのAPI
クライアントサイドで表示を変更する時は、JavaScriptでDOMを操作する。