Download - 楽天WEB APIワークショップ@東工大
WEB API ワークショップ
Chaisatien Prach下郡愛
Open Services Platform DepartmentWeb Service Platform Group Rakuten, Inc.
自己紹介
楽天 Web Service(API) のエンジニアです
下郡愛2006 年入社スマホ向け API 担当
Chaisatien Prach2010 年入社市場、検索 API 担当
3
1 週間でAPI を使ってサービスを作り発表する
ゴール
12/6 スケジュール16:50 - 課題説明 API 技術概要 楽天ウェブサービス API 紹介 楽天ウェブサービスAPI利用事例紹介17:00 - Heroku 環境構築 楽天ウェブサービス SDK 紹介17:30 - チーム分け17:35 - アイディアソン 開発タイム18:20 終了
12/13 スケジュール16:50 - 開発タイム16:10 - 発表準備17:40 - 成果発表会18:10 - 審査結果発表、集合写真撮影18:20 終了
6
講義の評価は成果発表会でします
ポイント
7
評価基準
1
アイディア新規性、独自性、優れた着眼点であるか
2
完成度デザイン、システム処理1週間でどれだけアプリ開発を進めることができたか
発表内容( 5 分間)
1. チーム名2. アプリケーション名3. サービス概要4. 独自のアイディア5. アプリデモ
API 技術概要
10
API とは
• Application Programming Interface
• ソフトウェアが互いにやりとりするための、インターフェイス ( 決まり事 )• API という言葉の意味は広い• どのように機能やデータを呼び出す
か。• Java API, Windows API
11
Web API とは
• Web の仕組みを利用した API の 1 つ。• HTTP を通して、機能を呼び出したり、
情報を取得する。
GET /item HTTP/1.1….
HTTP/1.1 200 OK…
Web API Server
API Client
12
楽天ウェブサービス API
• 楽天ウェブサービス API = 楽天のサービスの持つ情報 ( 楽天市場 , 楽天トラベル , 楽天オークション ..) の情報を Web の仕組みを利用してアクセスできる仕組み
13
マッシュアップ
アプリケーション
楽天ウェブサービス
Yahoo!DeveloperNetwork
新たな価値
開発者達の知恵
14
楽天ウェブサービス API の情報取得方法
サーバサイド• サーバ側で複雑な処理を行える• API のデータ保存が必要な際に、改ざん
されることは少ない
クライアントサイド• クライアント側で処理が行われるため、
サーバ側の負荷がかからない• 表示結果は完全にユーザ側 ( ブラウザ )
に依存する
15
サーバサイドでの情報取得
Web サーバなど 楽天ウェブサービス
サービス利用者 第三者開発者楽天
( プラットフォーム )
16
サーバサイドでの情報取得
Heroku 上のウェブアプリ
楽天ウェブサービス
サービス利用者 第三者開発者楽天
( プラットフォーム )
17
データ形式
JSON• XML よりデータ容量が軽い
XML• マークアップ言語• 古くから、様々な場面で使われ
ている
18
データ形式 (JSON)
{ “fieldName”: [ { “name”: “foo”, “price”: 200 }, { “name”: “bar”, “price”: 150 } ] }
19
データ形式 (JSON)
20
データ形式 (JSON)
Ruby でのデータ取得方法https://gist.github.com/kawahara/6548109
21
クライアントサイドでの情報取得
Web サーバなど
楽天ウェブサービス
HTML+ JavaScript
JavaScriptからリクエスト
データ
楽天ウェブサービス API
23
楽天ウェブサービス API
楽天市場 API
楽天オークション API
楽天ブックス API
楽天 GORA API
楽天トラベル API
楽天レシピ API
24
楽天ウェブサービス API
KOBO API
25
http://webservice.rakuten.co.jp/
テストフォームで使ってみよう
楽天ウェブサービス API 活用事例
27
http://stay-now.com/
Stay Now! ( 位置情報 X 楽天トラベル API)
28
http://rakuten-recipe.heroku.com
EIJIRO’s キッチン ( キャラクター X 楽天レシピ API)
29
Singapore Startup Challenge
Photo: Tomoaki INABA
30
http://www.jfash.com/home
JFASH ( 楽天市場アイテム検索 API)
Heroku 環境構築
http://rakuten-ws.herokuapp.com/
チーム分け
• Git アカウント持っている方は手を挙げてください
• 開発経験がある方も手を挙げてください
開発タイム
34
授業時間外の API への質問はこちらまで
http://rakuten-webservice.tumblr.com/
http://www.facebook.com/RakutenWebservice
http://twitter.com/RakutenAPI
成果発表会
36
評価基準
1
アイディア新規性、独自性、優れた着眼点であるか
2
完成度デザイン、システム処理1週間でどれだけアプリ開発を進めることができたか
発表内容( 5 分間)
1. チーム名2. アプリケーション名3. サービス概要4. 独自のアイディア5. アプリデモ
発表順
1. XX2. XX3. XX
審査員紹介
• 楽天株式会社 技術理事 吉岡弘隆• 楽天株式会社 ウェブサービスプラットフォー
ムグループ マネージャー 渡辺哲
結果発表、総評