Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
JSON:API入門 / Introduction to JSON:API
Search
アクイアジャパン Acquia Japan
September 16, 2020
Programming
170
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
JSON:API入門 / Introduction to JSON:API
https://www.acquia.com/jp/resources/webinars/acquia-devchannel-vol11
アクイアジャパン Acquia Japan
September 16, 2020
More Decks by アクイアジャパン Acquia Japan
See All by アクイアジャパン Acquia Japan
Auth0 by OktaとDrupalで実践!認証付きアプリケーションの新しいアプローチ
acquiajp
0
240
Drupal 10.3の新機能紹介ウェビナー
acquiajp
0
290
DrupalCon Portland 2024 総まとめウェビナー
acquiajp
0
140
開発者必見!Acquia Cloud IDEで最高のDrupal開発を始めよう
acquiajp
0
250
触って学ぶ!デジタルアセット管理 Acquia DAM ハンズオンウェビナー
acquiajp
0
61
DrupalCon Lille 2023 総まとめウェビナー
acquiajp
0
120
コンテンツ設計手法で変更に強いアプリケーションを実現する〜ローコードによるWebアプリのバックエンド実装 #CNDF2023
acquiajp
0
410
DrupalCon Pittsburgh 2023 総まとめウェビナー
acquiajp
0
110
Acquia製品概要&Site Studioデモのご紹介
acquiajp
0
150
Other Decks in Programming
See All in Programming
Findy - エンジニア向け会社紹介/Findy Company Deck
findyinc
6
400k
コードレビューのボトルネックを"する側"と"される側"の両面から解消する
yub0n
2
1.5k
大喜利で理解するLLM as a Judge / Understanding LLM-as-a-Judge through Ogiri
rockname
0
190
パズルゲームの作り方 / how to make puzzle games
kaityo256
PRO
2
270
Unity6 URPによる海底をテーマにしたVJシステムの解説 | Unity Shader 完全に理解した 勉強会
gam0022
0
330
速く作れる。その次は、速く確かめられる開発へ 〜AIネイティブ開発を支える、Shift Down〜 / Can build fast. Next, moving to development where we can verify fast.
rkaga
8
5.5k
When benchmarks go bad - what I learned from measuring performance wrong
hollycummins
0
130
contenteditable と日本語入力に向き合う
colorful12
0
120
ソニーのクラウド共通基盤の変遷とAI時代の開発スタイルに合わせた進化 / The Journey of Sony’s Common Cloud Platform and Its Evolution for AI-Native Development
kenjiyoneyama
0
230
R8 の設定見直しでアプリサイズ削減
andpad
0
140
すこし踏み込む CancellationToken
htkym
2
1.6k
KiroのSpecで「五目並べ」を作ってみる
satoshi256kbyte
1
350
Featured
See All Featured
The Cost Of JavaScript in 2023
addyosmani
55
10k
Mind Mapping
helmedeiros
1
390
WCS-LA-2024
lcolladotor
0
840
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
1
550
The Art of Programming - Codeland 2020
erikaheidi
57
14k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
56
3.5k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
530
Designing for Timeless Needs
cassininazir
1
520
Chasing Engaging Ingredients in Design
codingconduct
0
340
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
310
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
Transcript
JSON:API ೖ Drupal ͷ Web API JSON:API ͱʁ JSON:API ΤϯυϙΠϯτ
CRUDΦϖϨʔγϣϯ ߴͳϦιʔεͷऔಘํ๏ σϞ Q&A AGENDA
ຊͷεϐʔΧʔ ΞΫΠΞδϟύϯ ؛ढ़ฌ ιϦϡʔγϣϯΤϯδχΞ ΞΫΠΞδϟύϯ ؙࢁͻ͔Δ ςΫχΧϧτϥϯεϨʔλʔ ͰͿͪΌΜͶΔ
DrupalAPI-FirstɺHeadless Architecture ʹ ྗΛೖΕ͍ͯΔʂ https://dri.es/state-of-drupal-presentation-july-2020
Drupal ͷ Web API – RESTful Web Services – REST
API – ίΞϞδϡʔϧ – JSON:API – REST API – ίΞϞδϡʔϧ – GraphQL – ΫΤϦݴޠ – ίϯτϦϏϡʔτϞδϡʔϧ
Drupal ͷ Web API – RESTful Web Services – REST
API – ίΞϞδϡʔϧ – JSON:API – REST API – ίΞϞδϡʔϧ – GraphQL – ΫΤϦݴޠ – ίϯτϦϏϡʔτϞδϡʔϧ
JSON:API ͱ - 2016ΑΓ։ൃ։࢝ - Drupal 8.7 ʙ ίΞϞδϡʔϧͱͯ͠ಋೖ -
DrupalͷϢʔβʔͱύʔϛογϣϯΛ׆༻ - JSON API ͷ༷ʹ४ڌ
JSON:API ͱ JSON API ͱ - https://jsonapi.org - JSONͰAPIΛ࡞͢ΔͨΊͷΦʔϓϯελϯμʔυͳ༷ -
ڞ༗͞Εͨنʹै͏͜ͱͰ RESTful APIΛਝ͔ͭҰ؏ͯ͠࡞ - 2016ΑΓ։ൃ։࢝ - Drupal 8.7 ʙ ίΞϞδϡʔϧͱͯ͠ಋೖ - DrupalͷϢʔβʔͱύʔϛογϣϯΛ׆༻ - JSON API ͷ༷ʹ४ڌ
JSON:APIͷΤϯυϙΠϯτ - /jsonapi/node/article શͯͷهࣄ(article)ϦιʔεΛऔಘ - /jsonapi/node/article/xxx UUID=xxx ͷهࣄΛऔಘ - /jsonapi/node/article/xxx/uid
هࣄ(UUID=xxx)ͱඥ͘ߘऀ(Ϣʔβʔ)ϦιʔεΛऔಘ
None
JSON:API ͷ CRUD ΦϖϨʔγϣϯ GET POST PATCH DELETE ➔Ϧιʔεͷऔಘʢ୯Ұ or
ෳʣ ➔৽͍͠ϦιʔεΛ࡞ ➔طଘͷϦιʔεͷߋ৽ ➔طଘͷϦιʔεͷআ PUTະରԠ GETͷΈෳϦιʔεΛѻ͑Δ
ߴͳϦιʔεऔಘํ๏ - ϑΟϧλϦϯά - ιʔτ - ϖʔδωʔγϣϯ
ߴͳϦιʔεͷऔಘํ๏ɿϑΟϧλϦϯά GET /jsonapi/node/article?filter[label-a][condition][path]=title &filter[label-a][condition][operator]=CONTAINS &filter[label-a][condition][value]=react λΠτϧͰߜΓࠐΈ GET /jsonapi/node/article?filter[label-b][condition][path]=created &filter[label-b][condition][operator]=< &filter[label-b][condition][value]=1598713200
ͰߜΓࠐΈ
ߴͳϦιʔεͷऔಘํ๏ɿιʔτ GET /jsonapi/node/article?sort[sort-title][path]=title λΠτϧͰιʔτʢະࢦఆ࣌ঢॱʣ GET /jsonapi/node/article?sort[sort-title][path]=title &sort[sort-title][direction]=DESC λΠτϧͰ߱ॱιʔτ
ߴͳϦιʔεͷऔಘํ๏ɿϖʔδωʔγϣϯ GET /jsonapi/node/article?page[offset]=20 &page[limit]=10 Ґஔ20͔Β10ݸऔಘ
σϞΞϓϦέʔγϣϯͷߏ - όοΫΤϯυ - Drupal 8 - ϑϩϯτΤϯυ - React
DEMO https://github.com/DrupalizeMe/react-and-drupal-examples
JSON:API ೖ AGENDA Drupal ͷ Web API JSON:API ͱʁ JSON:API
ΤϯυϙΠϯτ CRUDΦϖϨʔγϣϯ ߴͳϦιʔεͷऔಘํ๏ σϞ Q&A
ࢀߟࢿྉ • JSON:API υΩϡϝϯτ ◦ https://www.drupal.org/docs/core-modules-and-themes/core-modules/ jsonapi-module • JSON API
◦ https://jsonapi.org • ༻ͨ͠σϞΞϓϦͷιʔείʔυ ◦ https://github.com/DrupalizeMe/react-and-drupal-examples • JSON:APIͷσϞಈը (Dries Buytaert) ◦ https://youtu.be/zEsNlAeYRn8
None