REST API refactoring

QuesCheetah 김명주

index

  1. REST API
  2. 리팩토링
  3. REST API 보안
REST API

IoTPaaS

QuesCheetah

SUJI

 

REST API

http://devfloat.net/wp-content/uploads/2015/10/Social-Sign-In-Buttons.jpg

http://www.developer.com/imagesvr_ce/9162/GoogleMapsAPIv3_Controls_fig1.png

https://en.wikipedia.org/wiki/List_of_open_APIs

REST API

http://blog.veeble.org/wordpress-rest-api/

REpresentational State Transfer Application Programing Interface

https://ko.wikipedia.org/wiki/REST

REST API

http://quescheetah.com/multiple/create
http://quescheetah.com/multiple/get
http://quescheetah.com/multiple/delete
http://quescheetah.com/single/create
http://quescheetah.com/question/create
http://quescheetah.com/question/get
http://quescheetah.com/question/delete
http://quescheetah.com/question/set/delete
http://quescheetah.com/question/private

 

REST API

https://en.wikipedia.org/wiki/Representational_state_transfer

REST API
  • action은 해당하는 method로
  • 큰 집합(collection)에서 elemet순으로
REST API
REST API

40% 감소

REST API
REST API

API KEY 를 사용해 쉽게 요청

REST API

API KEY 를 사용해 쉽 요청

고 안전하게

REST API

OAuth 1.0  OAuth 2.0

https://ko.wikipedia.org/wiki/OAuth

https://www.google.com/trends/?hl=ko

REST API

OAuth 1.0  OAuth 2.0

require SSL

 

 

 

 

 

30$~60$/Y

REST API

OAuth..?

라이브러리

비용

REST API

JWT

  • api key
  • secret key

토큰 자체에 정보를 담아서 암호화

db 저장 안함

더 쉬운 요청 가능

REST API

JWT

변조 당하면?

 

http://www.slideshare.net/GoAtlassian/atlas-camp-2014-build-a-connect-addon-with-your-own-stack

REST API

JWT

  • secret key 재발급
  • Expiration Time Claim
  • Not Before Time Claim

  • 허용된 URL 에서만 호출 가능

REST API

JWT

API KEY 로 요청 + JWT 로 요청

  • Document 수정
  • js SDK 수정
  • Tutorial  수정
  • Sample code 수정

 

https://jwt.io/#libraries-io

JWT 기능 붙이는건 쉽다!

TODO

REST API

생각보다 단순하지 않다.

  • logging
  • hyperlink
  • pagination
  • error code
  • partial response

.

.

 

REST API

Q&A

감사합니다.

Made with Slides.com