More Related Content
PDF
PDF
PPTX
KEY
PPTX
PDF
PDF
ハンズオン勉強会 はじめてのJavaScriptとSPARQL PDF
はじめてのモバイルウェブアプリ 3 SPARQLハンズオン オープンデータ水位ゲーム What's hot
PDF
Next-L Enju 開発WS #03 Ruby on Railsの使い方 PDF
PDF
PDF
書籍「軽量・高速モバイルデータベース Realm入門」を使って学ぶRealmの勘所 PDF
PDF
Similar to Web API デザインの鉄則 第2章
PDF
PPT
OSC2008 Tokyo/Spring REST勉強夜会 PDF
CloudSpiral 2014年度 Webアプリ講義(1日目) PDF
Apiドキュメンテーションツールを使いこなす【api blueprint編】 PDF
Hypermedia: The Missing Element to Building Adaptable Web APIs in Rails (増補日本語版) PDF
Java クライント実装におけるAPIスタイル頂上決戦! 野良REST vs GraphQL vs OData vs OpenAPI (Swagger) PPTX
PDF
JSON Schema で Web API のスキマを埋めよう PDF
PDF
PDF
インターフェース定義言語から学ぶモダンなWeb API方式: REST, GraphQL, gRPC PDF
PDF
PPTX
Spring data-rest-and-spring-cloud-contract PDF
こんなに使える!今どきのAPIドキュメンテーションツール PDF
リソースモデリングパターンの提案 #sendagayarb PDF
AWS Expert Online appsyncを使ったServerlessアーキテクチャ PPT
『RESTful Web サービス』読書会 第4回 9章 説明資料 PDF
PPT
More from Taichi Watanabe
PPTX
PPTX
PPTX
PPTX
PPTX
PPTX
PPTX
エンドツーエンドテストを自動化したらチームがすごく良くなった@XPまつり2015LT PPTX
PPTX
PPTX
PPTX
特大のヤラカシからの復活 -俺とみんながテストコードを書き出すまで- PPTX
PPTX
10%Rule -Challenge to Making Innovative Team- @RakutenTechnologyConference2012 Web API デザインの鉄則 第2章
- 1.
- 2.
- 3.
リソースの定義の考え方
JSON Schema
もう少しJSON Schemaを調べてみたよ
よーしパパJSON Schema使ってみるぞ
- 4.
- 5.
フィールド名名称データ型
domain ドメイン名string
states 状態object
states.setup セットアップ済みフ
ラグ
boolean
states.available 利用可能フラグboolean
created リソースの作成日string
updated リソースの更新日string
“states” : “10” (== セットアップ=true & 利用可能=false)
みたいに表現できなくもないけど使いづらい。
別のオブジェクトにしておけばそれぞれ更新可能
{
“domain” : “mail.example.com”,
“states” : {
“setup” : true,
“available” : true
},
“created” : “2014-06-01T20:12:50”,
“updated” : “2014-06-01T20:23:16”
}
- 6.
ちゃんと見なさい! 特に英語が苦手なあなた。
OpenSocial
http://opensocial.github.io/spec/2.5.1/Social-Data.xml#Person
schema.org
http://schema.org/
Activity Streams
https://github.com/activitystreams/activity-schema/blob/master/activity-schema.md
- 7.
フィールド名名称データ型
domain ドメイン名string
states 状態object
states.setup セットアップ済みフ
ラグ
boolean
states.available 利用可能フラグboolean
created リソースの作成日string
updated リソースの更新日string
※写すのメンドイんでP29参照。
title -> 何語でもご自由にの模様。
この段階だとフォーマットが全然定義さ
れていないので、
日付型などフリーダム!
※ちなみに
Jsonに存在するデータ型は4種類の
primitive typesと2種類のstructured
typesのみ。
strings, numbers, booleans, and null
objects and arrays
http://www.ietf.org/rfc/rfc4627.txt
- 8.
P30
domain -> “maxLength” : 255, “format” : “hostname”
States -> “default”
二重にdefaultが定義されてますね。
Created / update -> “format” : “date-time”
- 9.
P30
domain -> “maxLength” : 255, “format” : “hostname”
States -> “default”
二重にdefaultが定義されてますね。
Created / update -> “format” : “date-time”
誰だよお
前!?
- 10.
http://json-schema.org/
Docs -> schema validation -> 7. Semantic validation with "format“
7.3.1. date-time
7.3.2. email
7.3.3. hostname
7.3.4. ipv4
7.3.5. ipv6
7.3.6. uri
- 11.
http://json-schema.org/examples.html
a simple example
Requiredは最後にまとめて書くらしい
“uniqueItems” すげーイイ! ※xsdにもある模様: http://www.w3schools.com/schema/el_unique.asp
"warehouseLocation": {
"description": "Coordinates of the warehouse with the product",
"$ref": http://json-schema.org/geo
}
→ http://json-schema.org/documentation.html -> Standard schemas
Geographic Coordinate
Card
Calendar
Address
- 12.