LoginSignup
36

More than 5 years have passed since last update.

6月11日 フロントエンドの人がWeb APIを語る会 参加メモ

Posted at

セッション

Falcorについて

@pastelInc さん

REST APIでは非効率ですか?ならばFalcorで立ち向かってみましょう

Falcor

動画配信大手のNetflixが開発したライブラリ。ミドルウェア。

カスタマイズした情報を取得できる

データの階層をパスに記述することで、過不足無い情報を送受信できる。

キャッシュコードの効率を向上させる

重複したアイテムはひとつだけキャッシュする。

→キャッシュコヒーレンシー

キャッシュとメモリの一貫性を保つ

技術的な構造

単一の仮想的なjsonモデルに集約して通信

クライアントからは一個のjsonのみあるようにみえる

→JSON Graph

同じ内容が複数のエントリーにあるような状況

サーバーサイドでは単一の情報としてもっているが、
クライアントサイドでは別々のオブジェクトになるところ、
一個のアイテムとして扱える。

例;最近みた動画リストと、おすすめ動画リスト、それぞれ同じ映画が登録されているとして、その映画に関する情報は同一である。

Falcorが同じアイテムかどうかを判断して、既に別でキャッシュされた同じアイテムがあれば、キャッシュから取ってくる事で、高速に動作できる。

サーバーサイドのためのRouter

サーバーサイドを JSON Graph グラフに対応させる。

→リクエストを受け取ってから別のAPIを叩くのもあり

→JSON Graph
の設計が結構面倒らしい

→Nodeでの実装になる

WordPressをAPIでぶん回す

岡本秀高 さん

WordPressコア実装を目指して開発が進められているWP REST API。 Reactでのフロント実装やAWS Lambdaと組み合わせた使い方など、事例やコードを紹介します。

WordpressのデータをjsonでとってこれるAPI

管理画面とViewの分離

現状では知っている人にとっては結局WP関数のほうが便利

従前のWPのテーマとプラグインの問題点

密に結合しているため、1箇所落ちると全部ダメになる。

→ APIで疎結合にすることで、完全に落ちる事は少なくなる

まだベータ版

現在はプラグイン形式で有効にしたら使える

IONICとかで使うと便利

自分のブログをアプリ化したり

GitHub Pages を Web API として使う

カイト さん

GitHub の API ではなく、GitHub のサービスの一つである GitHub Pagesを使って、サーバなしで Web API を提供

Jekyll Pages API を使う

Jekyll サイト内のすべてのページなどのデータを元にJSONファイルを生成する

GitHub Pages を使うメリット

インフラのメンテが不要

記事もすべてGit管理

スタティックファイルの配信なのでセキュリティリスクが低い

GitHub Pages は、許可されたプラグイン以外は使用できない

→Jekyll Pages APIは使えない

ローカルで生成してプッシュする?

→面倒

TravisCIなどの外部サービスで自動化する

→学習コストがかかる
→公開されるまで時間がかかる

Rakefileなどによるデプロイ

→Rakefileを作る必要がある
→git以外にデプロイ用のコマンドを実行する必要がある

GraphQLについて

おのうえ(@_likr) さん

フロントエンドの変更のためにバックエンドのWeb APIまで修正なんてもうやってられない? GraphQLでその悩みを解決しましょう。

最大公約数的なAPIになりがち

不要な情報がつめこまれたり、ページ毎に乱立したり。
無秩序に拡張される、つらいAPIに、、、

GraphQLで解決

Facebookの提唱するクエリインタフェース

フロント側で取ってきたいクエリーを書けば必要なフィールドだけとってこれる。

柔軟なクエリインタフェースを低コストで実装できる。

expressのミドルウェアとして動く

自由なところ

クライアントサイド、サーバーサイド自由に構築できる

LT

オープンデータを自動デプロイしたい話が多かった

Lambda+GItHub+Travis CIで全自動サーバーレスAPI

宮内隆行 さん
https://speakerdeck.com/miya0001/lambda-plus-github-plus-travis-citequan-zi-dong-saharesuapi

madefor

オープンソースで自治体の足りないところを補完する活動

郵便番号API

Lambdaから毎日Travis叩いて自動更新

Node.jsでWebサイトからAPIを作るプログラムを書いた話

@potate4d さん
https://speakerdeck.com/potato4d/node-dot-jsdewebsaitokaraapiwozuo-rupuroguramuwoshu-itahua

最低賃金APIってない?というFB上の一言から。

Webサイトで公開されている情報のAPI化需要がある。

SJISの扱いは面倒。

行政のCSVファイルを 勝手にAPIにしてみた話

岡本秀隆 さん
https://speakerdeck.com/hideokamoto/xing-zheng-falsecsvhuairuwo-sheng-shou-niapinisitemitahua

和歌山県がgithubでオープンデータを公開している

役所のデータなので、CSV、SJIS

json化したら使いやすくなる

試しに図書館の貸出ランキングをJSON API化

Travisでデプロイ自動化

FBでGitHubの人や和歌山県の人からリアクション

思いつきでもやってみたら喜ばれる

mocha + superagent + power-assert で始めるAPIテスト入門

後藤知宏 さん

(すみません、メモ消えてしまいました)

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
36