The document discusses the evolution and features of the Spring framework, particularly focusing on Spring MVC and its enhancements over the years, including RESTful support, async requests, and WebSocket messaging. It highlights the importance of community feedback for continuous development and introduces new features in version 4.2, such as server-sent events, HTTP caching, and improved documen
Restletã¨ã¯ï¼ Restlet(http://www.restlet.org/)ã¯ãWeb APIãªã©ã§ä¸»æµã¨ãªã£ã¦ããREST(REpresentational State Transfer)åã®éä¿¡ãè¡ãã¢ããªã±ã¼ã·ã§ã³ãæ§ç¯ããã軽éãª(Lightweight)ãJavaãã¬ã¼ã ã¯ã¼ã¯ã§ããCDDL1.0ã¨GPL2.0ã®ãã¥ã¢ã«ã©ã¤ã»ã³ã¹ã®ä¸ã§é å¸ããã¦ãã¾ããéçºã¯ãã©ã³ã¹ã®Noelios Consulting社(http://www.noelios.com/ï¼ãã©ã³ã¹èª)ã主ä½ã¨ãªã£ã¦è¡ã£ã¦ãã¾ãããã¼ã¸ã§ã³1.0.1ããªãªã¼ã¹ãããã®ã¯2007å¹´5æ3æ¥ã§ãã Javaã®REST APIã¨ããã°ãJAX-RS(JSR 311)ã®ä»æ§ãJCPã§è©°ãã¦ããæä¸ã§ãããRestletã§ã¯ãã¼ã¸ã§ã³2.0ã®APIãJCPã«æåºãããã¨ãè¨ç»ãã¦ãã¾ã(2007å¹´4æ25æ¥ä»ã®No
APIãä½ãã¨ã ã¿ãªãããæ¯æ¥API使ã£ã¦ã¾ããï¼ç§ã¯ãã¯ã³ã©ã¤ãã¼ã§APIãã³ã¼ã«ãããã¨ã«ããã£ã¦ãã¾ãããã¦ããã¤ã使ã£ã¦ããAPIãä½ãå´ã«ãªã£ãã¨ããã©ã®ããã«è¨è¨ãã¦ãã¾ãã§ããããï¼ã¾ããä½ã£ãAPIãã©ã®ããã«ä½¿ã£ã¦ããã£ã¦ãã¾ããï¼ãããªçåã«å¿ãããµã¼ãã¹ãApiaryã§ãã Apiaryã¨ã¯ï¼ Apiaryã¯ãREST APIããµã¯ãã¨æ¸ãããµã¼ãã¹ã§ããã¾ããAPIããã¥ã¡ã³ããçæãã¦ããã¾ããã¢ãã¯ãµã¼ããæä¾ãã¦ããã¾ããAPIå©ç¨ãµã³ãã«ã³ã¼ããä½ã£ã¦ããã¾ããããã使ããªãã£ã¦é¸æè¢ã¯ç¡ãã§ããï½ã ç¡æç»é²ããã¨æ©é使ããããã«ãªãã¾ãããã¼ã ã§ãã©ã¤ãã¼ããªAPIéçºãããããã°ææãã©ã³ã鏿ãã¦ãã ããã APIéçºã®æµã APIéçºã®æµãã¯ãã¾ãã¯ããã«Markdownå½¢å¼ã§ããã¥ã¡ã³ããæ¸ãã¾ããæ¢ã«ãµã³ãã«ãããã®ã§ããã使ã£ã¦ã¿ã¾ãããã
使æ¥: 2015-02-11 21:34:52  /  last updated at: 2015-02-15 20:03:11 ã«ãã´ãª: HTTP ããã°ã©ãã³ã° [ Prev ] [ Next ] [ æè¡Â ] RESTfulãªAPIãWebã¢ããªã±ã¼ã·ã§ã³ãéçºããéã«ãä¸ã¤ã®çåãçããã RESTã§ã¯ãã¹ãã¼ãã¬ã¹ããéè¦ãã¦ããµã¼ããµã¤ãã§ã®ã»ãã·ã§ã³ç®¡çã§ã¯ãªããã¯ã©ã¤ã¢ã³ãå´ã§èªè¨¼æ å ±ãç¶æ ãä¿æãã¦ããµã¼ãã«é½åº¦éãæ¹å¼ãå±ãã¦ãããããã¯HTTPã§å®è£ ãããªããCookieã使ã£ãã»ãã·ã§ã³ç®¡çã§ã¯ãªããBasicãDigestèªè¨¼ãªã©ãHTTPèªè¨¼ã使ããã¨ã«ãªãã ãããç¾å®åé¡ã¨ãã¦ãã¢ãã³ãªWebãµã¤ãã§Basic/Digestèªè¨¼ãæ±ããã¨ã¯ãªãããµã¼ããµã¤ãã®Cookieã使ã£ãã»ãã·ã§ã³ç®¡çã使ããã¨ã«ãªãã RESTã«ããã¦ãã¹ãã¼ãã¬ã¹ã¨ããç¹
Web APIã®ä¹±ç«ã¨Atom ç¾å¨ãä¸è¬ã³ã³ã·ã¥ã¼ãåãã®Webãµã¼ãã¹ã¯å¤ãã®ãµã¤ãããããã¯ã¼ã¯è¶ãã«å©ç¨ã§ããAPIï¼Application Programmable Interfaceï¼ãå ¬éãã¦ãã¾ããããããWeb APIã¨å¼ã°ãããã®ã§ããéçºè åãæè¡éèªãªã©ãè¦ã¦ããããã·ã¥ã¢ãããAPIããã°ã©ãã³ã°ã®è§£èª¬è¨äºãå¤ãæ²è¼ãããããã«ãªãã¾ããã 2000年代ã®ååããGoogleãAmazonãã¯ããã¨ãã主è¦ãªWebãµã¼ãã¹ãAPIãå ¬éãå§ãã¾ããã2000年代ä¸ç¤ããã¯æ§ã ãªãµã¤ãã§APIãå ¬éãããããã«ãªããç¾å¨ã«è³ã£ã¦ãã¾ããå½åã¯Webã§äººéãã¢ã¯ã»ã¹ã§ããæ å ±ãAPIã¨ãã¦å ¬éãã¦ãã¾ããããç¾å¨ã§ã¯Webãã©ã¦ã¶ã§æ å ±æä¾ã¯ããªããã®ã®APIã ãæä¾ããã¨ãããµã¤ããå¢ãã¦ãã¾ããã ãã¦ããããã®Web APIã¢ã¼ããã¯ãã£ãè¦ã¦ã¿ãã¨ãç¾ç¶ã§ã¯å
ç¾å¨ã§ã¯REST APIã¯ã¨ã¦ãä¸è¬çãªè©±é¡ã§ããã»ã¨ãã©ãã¹ã¦ã®Webã¢ããªã±ã¼ã·ã§ã³ã®ä¸é¨åã¨ãªã£ã¦ãã¾ããã·ã³ãã«ã§ä¸è²«æ§ãããå®éçãªã¤ã³ã¿ã¼ãã§ã¼ã¹ã¯å¿ é ã§ããããã¯çããã®APIãä»ã®äººã使ããã¨ãã¨ã¦ã容æã«ãã¾ããçããã«ã¨ã£ã¦ã¯RESTã®å®è·µãæ¥å¸¸çã«æããããããããã¾ããããRESTããã¾ãå°éããªã人ã ãããè¦ããã¾ãããããRESTã«ã¤ãã¦æç¨¿ãããã£ããã§ããã ãã®è¨äºã«ã¯RESTfulãªAPIãè¨è¨ããæã«èæ ®ãã¹ããã¹ããã©ã¯ãã£ã¹ãããã¾ãã æ³¨æ : ããã§ã®ãã¹ããã©ã¯ãã£ã¹ã¯ãç§ãéå»ã®çµé¨ã«åºã¥ãã¦è¯ãã¨èããäºä¾ã§ããããéãèãããæã¡ã§ããã°ããæ°è»½ã«ã¡ã¼ã«ããã ããã°æè¦äº¤æã§ããã¨æãã¾ãã APIã®ãã¼ã¸ã§ã³ã示ã APIã®ãã¼ã¸ã§ã³ã¯å¿ é ã§ããã¹ãã§ãããããããã¨æéãçµã£ã¦APIãå¤ãã£ã¦ãå½±é¿ãåãã¾ããããã®æ¹æ³ã®1ã¤ã¯UR
å ææ«ã«RESTful#ã¨ã¯åå¼·ä¼2ãéå¬ãã¦ãã¾ããã ãããããï¼ï¼ï¼ï¼æ¬å½ã«è¯ãã£ãï¼ï¼ï¼ï¼åå¼·ã«ãªã£ãï¼ï¼ï¼ã¾ã è奮å·ãããã¬æãã§ãã åå¼·ä¼1åç®ãçµãããå¾ãRESTã®ç¥èãç§ã¯ããå®è·µã«çãããã¨ãåºæ¥ã¾ããã ãããã¯URLã¨ã¢ã¯ã·ã§ã³èããã¨Controllerãã1åç¨æããï¼ããªãã¦ä¼è©±ãåºãããã«ãªããã¬ãã«ã¢ããããæãããã¾ãã 2åç®ã¯ã©ããããããªã¨ã¼ããããã¦ããæã«è¦ã ãã®ã¹ã©ã¤ãã大å¤è峿·±ãã¦ãä»ã«ãSlideShareã®RESTé¢ä¿ãå¾å¾ãã¾ãããããããä¸çªé·²æ´ã¿ããã¾ããï¼ï¼ï¼ ï¼ã¬ãã«ãä¸ãã£ã¦ããã¾ãå¾å¾ããã¨ãä»ã®é£ããã¨æãããã®ã«ãé·²æ´ã¿ãããã®ããããã¾ããããæ¥½ãã¿ãï¼ ãããã¯çèªãã¹ãï¼ããã¦ã¡ããã¨çè§£ã§ããããã«ãªãããï¼ãã¨æãããWEBãæ¯ããæè¡ããè¦è¿ããã¨ãããæå¾ã®5é¨ããWEBãµã¼ãã¹ã®è¨è¨ãã§ããã®ã§ã
æçåç»äºæ¥å®¤ã® @yoshiori ã§ããåã«ãRESTful Web API éçºããããã Garageãã§ç´¹ä»ãã RESTful Web API ãéçºãã Garage ã®ã¯ã©ã¤ã¢ã³ãå´ã®ã©ã¤ãã©ãªãå ¬éãã¾ããããã®è¨äºã§ã¯ãã®ä½¿ãæ¹ãç´¹ä»ãããã¨æãã¾ããGarage ã®è¨è¨ææ³ããµã¼ãå´ã®å®è£ ã«ã¤ãã¦ã¯ä¸è¨è¨äºã御覧ãã ããã ä»åã¯ç°¡åã«ã¯ã©ã¤ã¢ã³ãå´ã®æåãç¥ã£ã¦ããã ãããã« pry ã使ã£ã¦èª¬æãããã¨æãã¾ãã ã¢ã¯ã»ã¹ãããµã¼ãã¯å ç¨ã®è¨äºã§ä½æããã¢ããªã±ã¼ã·ã§ã³ã使ç¨ãã¦ã¿ã¾ãã ãµã¼ãã®æºå https://github.com/taiki45/garage-example ã® README ã«ãæ¸ãã¦ããã¾ãã®ã§ç°¡åã«é²ãããã¨æãã¾ãã ã¾ãã¯ä¸æºåã¨ãã¦ã³ã¼ãã github ãã clone ãã¦ãã¦ãã©ã¤ãã©ãªã®ã¤ã³ã¹ãã¼ã«ã¨ DB ã®ãã¤ã°ã¬
DataMapperã®ã³ã³ãã¼ãã³ãã¯ãåºæ¬çã«ã¯ã©ã¹ã§ã¯ãªãã¢ã¸ã¥ã¼ã«ã¨ãã¦æä¾ããã¦ãããããã¢ããªã±ã¼ã·ã§ã³ã§å©ç¨ããã¢ãã«ã¯ã©ã¹ã«ã¤ã³ã¯ã«ã¼ããã¦ä½¿ãã¾ãã Resourceã¢ã¸ã¥ã¼ã«ãã¤ã³ã¯ã«ã¼ãããã¨ãèªåçã«Modelã¢ã¸ã¥ã¼ã«ãextendãããPersonã¯ã©ã¹ã¯Modelã¯ã©ã¹ã¨ãã¦æ¯ãèãããã«ãªãã¾ããããã¯å³1ã®Personã«ç¸å½ãã¾ãã å³1ã®Person Mapperã«ç¸å½ããä»çµã¿ã¯Repositoryã§ããRepositoryã¯ãcreate, update, delete, read_one, read_manyãªã©ã®ããã¼ã¿ã¹ãã¢ã«å¯¾ããåºæ¬çãªæä½ã®ã¤ã³ã¿ã¼ãã§ã¤ã¹ãè¦å®ãã¾ããModelã¯ã©ã¹ã¯ãRepositoryã¸ã®åç §ãæã£ã¦ãã¦ã Modelã¯ã©ã¹ã«ãããã¼ã¿ã¹ãã¢ã¸ã®ã¢ã¯ã»ã¹ã¯ãå ¨ã¦Repositoryãä»ãã¦è¡ããã¾ãããã®éããã¼ã¿ã¹
Web API: The Good Parts ä½è : æ°´éè²´æåºç社/ã¡ã¼ã«ã¼: ãªã©ã¤ãªã¼ã¸ã£ãã³çºå£²æ¥: 2014/11/21ã¡ãã£ã¢: 大忬ãã®ååãå«ãããã° (1ä»¶) ãè¦ã æ¥åã§ã¯iOSã¢ããªã¨ããã¯ã¨ã³ãã®éçºãä¸¡æ¹æ å½ãã¦ããã®ã§ãAPIã®è¨è¨ãä½åããã£ã¦ãããããããèªåãªãã®ããæ¹ã§ãã£ã¦ããé¨åãå¤ãã£ãã®ã§ãæè¿çºå£²ãããWeb API: The Good Partsãèªãã§ã¡ããã¨ããè¨è¨ã«ã¤ãã¦å¦ã¶ãã¨ã«ããã å¾ãããå¦ã³ãã¡ã¢ã¨ãã¦æ®ãã HATEOAS HATEOASï¼Hypermedia As The Engine Of Application Stateï¼ã¨ããè¨è¨æ¹æ³ãåãã¦ç¥ã£ããHATEOASã§ã¯ã¾ãããµã¼ãã¼å´ã¯ã¬ã¹ãã³ã¹ã«é¢é£ããã¨ã³ããã¤ã³ããå«ã次ã«ã¢ã¯ã»ã¹ããAPIãç°¡åã«è¾¿ããããã«ãããã¯ã©ã¤ã¢ã³ãå´ã¯æåã®ã¨ã³ããã¤ã³ã以
Architecting RESTful Rails 4 API 22 Oct 2013 This is a follow-up to my previous post about Authentication with Rails, Devise and AngularJS. This time weâll focus more on some aspects of the API implementation. One thing to keep in mind, where my previous example used Rails 3.2, Iâm using Rails 4 this time around. Versioning If you are building an API which could be potentially consumed by many dif
Java EE 6ã§ãµãã¼ããããJAX-RSã®ç¹å¾´ã¨RESTfulã¢ã¼ããã¯ãã£ååã使ã£ã¦ãJavaã§ã®åæ£Webãµã¼ãã¹ãè¨è¨éçºããæ¹æ³ãå¦ã¶æ¸ç±ãçè«ãããå®è£ ã«ç¦ç¹ãå½ã¦ãRESTã®ã¢ã¼ããã¯ãã£ããå®è£ ã¾ã§ãè±å¯ãªãµã³ãã«ã³ã¼ãã¨ã¨ãã«è§£èª¬ãã¾ããååã§ã¯ãURIã®æ±ºå®æ¹æ³ãHTTPã³ã³ãã³ããã´ã·ã¨ã¼ã·ã§ã³ãHATEOASãªã©RESTã¨JAX-RSã®æ¦è¦ã«ã¤ãã¦è§£èª¬ããå¾åã®ã¯ã¼ã¯ããã¯ã§ã¯ãååã®æè¡è§£èª¬ã§åãä¸ããè¨å®ãå®è¡ãªã©ãä¾é¡ã¨å ±ã«å¦ç¿ãã¾ããJAX-RS仿§ã®è§£èª¬ã¨å ·ä½çãªå©ç¨ä¾ãããªãæ¬æ¸ãèªããã¨ã§ãJavaã®æ°ãããã¶ã¤ã³ææ³ã§ããã¢ããã¼ã·ã§ã³ãã¤ã³ã¸ã§ã¯ã·ã§ã³ãªã©ã«ã¤ãã¦ãèªç¶ã¨å¦ã¶ãã¨ãã§ããã§ããããæè»ãªAPIãæä¾ããJAX-RSã顿ã«RESTã«ã¤ãã¦å¦ã¹ãæ¬æ¸ã¯ãJavaã®ææ°ååãå¦ç¿ãããããã°ã©ãï¼è¨è¨è å¿ æºã®ä¸åã§ãã ç®æ¬¡ ã¾ã
Railsã使ã£ã¦ããæ¹ãã使ã£ã¦ããªãæ¹ãããã«ã¡ã¯ããã®ç¹éã§ã¯ããâ Rails2.0ã®è¶³åãã¨ä¸ç´è ã¸ã®éãã¨é¡ãã¦ã2007å¹´12æ7æ¥ã«ãªãªã¼ã¹ãããRails2.0ã®åºç¤ã¨ãRails2.0ãæç¤ºããæ°ããã¢ããªã±ã¼ã·ã§ã³ã®å½¢ãã«ã¤ãã¦å¦ãã§ããããã¨æãã¾ãã Rails2.0ã¨ã¯ä½ãï¼ Railsã®éçºè David Heinemeier Hanssonï¼DHHï¼èªèº«ãèªãããã«ãRails2.0ã¯ãé©å½çã¨ããããæ¼¸é²çï¼â ââ evolutionary rather than revolutionaryâ ââ ï¼â ããªãªãªã¼ã¹ã§ãããã¼ã¸ã§ã³ã®æ°å¤ã®å¤åã¨ã¯ããã¯ãã«ãRails1.1ã¨Rails1.2éã«è¡ãããã»ã©ã®å¤é©ã¯ããã¾ããã ã§ãããçã¿ããä¼´ãæ°å¤ãã®æ´ç·´ã¨ãRESTfulãªã¢ããªã±ã¼ã·ã§ã³ã¸ã®å¾åãå«ãã ãªãªã¼ã¹ã«ãªã£ã¦ãã¾ãã ãã®ç¹éã§ã¯ã¾ããRails
èæ¯ APIããã¥ã¡ã³ããæ¸ãã®ã楽ã«ãªããã¼ã«ã¾ã¨ã - Qiita iodocsã§ä¾¿å©ãªREST APIããã¥ã¡ã³ãã使ãã - Qiita ããã¾ã§ãã£ã¨REST APIããã¥ã¡ã³ããwikiä¸ã§ç®¡çãã¦ãã¦ãéãããã¼ã¸ä¸ã§ç¹æ®è¨æ³ä½¿ã£ãããã¹ã¿ã¤ã«ã®èª¿æ´ã«æéãåãããã®ãè¾ãã£ããããã§è¯ãããªããã¥ã¡ã³ããã¼ã«ãè²ã 調ã¹ã¦ããã ãã©ãæçµçã«apiary.ioãä¸çªè¯ãããã¨ããçµè«ã«ãªã£ã¦ããã ãã®ãµã¼ãã¹ã®ä¸»ãªç¹å¾´ã markdownè¨æ³ã§APIããã¥ã¡ã³ããè¨è¿°ã§ãã ããã¥ã¡ã³ãã®çæã¨åæã«APIã®ã¢ãã¯ãµã¼ããç¨æãã¦ããã ãµã¤ã³ã¢ãããã5åãããããã°ããã¥ã¡ã³ãå ¬éã§ãããããã¥ã¡ã³ãã®ãã¹ãå ãæ°ã«ããªãã¦ãããã ç¹ã«ããã¥ã¡ã³ãã¨ä¸ç·ã«ã¢ãã¯ãä½ã£ã¦ãããã®ã¯ä»ã«ã¯ãªããã¤ã³ãã§ããªã便å©ã 使ã£ã¦ã¿ã ãµã¤ã³ã¢ããã¯Githubã¢ã«ã¦ã³ãã§ h
CookpadãããOSSã§å æ¥OSSã§å ¬éãããGarageã¯RestfulãªAPI + OAuth(Doorkeeper)ãã¯ã³ã¹ãããã§æä¾ãã¦ãããgemã§ãã ã¡ããã©è§¦ãæ©ä¼ãåºã¦ããã®ã§ãä»ååè¦å «è¦ããªãã使ã£ã¦ã¿ãã®ã§ãã®ã¡ã¢ã§ãï¼ ð ä»åã®ãµã³ãã«å®è£ ä»åã¯OAuthã§èªè¨¼ãã¦ã次ã®ã·ã³ãã«ãªAPIã«ã¢ã¯ã»ã¹ã§ããããã«ããã¾ã§ã®ãµã³ãã«ã使ãã¾ãã GET /v1/users => ã¦ã¼ã¶ã¼ã®ãªã¹ãåºå GET /v1/users/:id => åã ã®ã¦ã¼ã¶ã¼æ å ±ã®åºå ð Gemã®è¿½å Gemfileã«ä»¥ä¸ã追å ãã¦ãbundle installã gem 'garage', github: 'cookpad/garage' gem 'responders', '~> 2.0' # If you use Rails4.2+ group :development
æè¡é¨ã®å°é(@taiki45)ã§ãããã®è¨äºã§ã¯ç°¡åãªã¢ããªã±ã¼ã·ã§ã³(ããã°ã·ã¹ãã )ã®å®è£ ãéãã¦ãã¯ãã¯ãããã§ä½æã»ä½¿ç¨ãã¦ããã©ã¤ãã©ãªã®Garage ã®ç´¹ä»ã¨ Garage ã使ã£ã RESTful Web API ã®éçºããç´¹ä»ãããã¨æãã¾ãã Garage 㯠RESTful Web API ãéçºããããã®ã Rails gemified plugins ã§ããRails ããã°ã©ã㯠Garage ã使ã£ã¦ Rails ãæ¡å¼µãããã¨ã§ç´ æ©ã Web API ãéçºãããã¨ãã§ãã¾ããGarage ã¯æ°ããã¢ããªã±ã¼ã·ã§ã³ãéçºããå ´åã«ããæ¢åã® Rails ã¢ããªã±ã¼ã·ã§ã³ã«çµã¿è¾¼ãã§ Web API ãå®è£ ããå ´åã§ã使ç¨ã§ãã¾ããGarage ã¯ãªã½ã¼ã¹ã®ã·ãªã¢ã©ã¤ãºãã¢ã¯ã»ã¹ã³ã³ããã¼ã«ãªã© Web API ã®å®è£ ã«å¿ è¦ãªæ©è½ãã«ãã¼ãã¦ãã¾ãã Ruby
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}