非同期通信とは
まず、同期通信とは全てのHTML・CSSを読み込んでページを更新する処理のことを言う。だから時間もメモリもかかる。
対して、非同期通信とは全て更新するのではなく、HTMLの一部分のみをJavaScriptで抽出し、変更をサーバーに送って、返ってきたHTMLをJavaScriptで更新する処理のことを言う。だから短時間で軽く行える。
また、一部分のみをサーバー通信するので、それ以外の機能を動かすことができる。ということで、同時並行で機能を実行できると言う点でも意味がある機能である。
<流れ>
①ブラウザでJavaScriptが発火
②ajaxで指定した、URLのアクションを動かすリクエストを、データTYPEに合わせて非同期にサーバーへ送る
③サーバーに送られた情報を使って、jbuilderでjson形式のデータを作る
④コントローラでjsonの情報をViewへ送る
⑤データを受けたらブラウザで、DOM機能※(DocumentObjectModel)を基にして、部分的にHTMLを更新する
※DOMとは…JavaScriptがHTMLの読み込み、セレクタとして利用できるようにするための仕組み。HTMLをタグやクラス名など毎に区切って場所を特定できるようにしている。
以上。非同期通信とは何か、端的に言えるようにしたもの。備忘備忘。