Abstract
RESTful Web services are software services which are published on the Web, taking full advantage and making correct use of the HTTP protocol. This chapter gives an introduction to the REST architectural style and how it can be used to design Web service APIs. We summarize the main design constraints of the REST architectural style and discuss how they impact the design of so-called RESTful Web service APIs. We give examples on how the Web can be seen as a novel kind of software connector, which enables the coordination of distributed, stateful and autonomous software services. We conclude the chapter with a critical overview of a set of emerging technologies which can be used to support the development and operation of RESTful Web services.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Allamaraju, S.: RESTful Web Services Cookbook. O’Reilly and Associates Sebastopol, California (2010)
Alonso, G.: Myths around web services. Bull. Tech. Committee Data Eng 25(4), 3–9 (2002)
Amundsen, M.: Building Hypermedia APIs with HTML5 and Node. O’Reilly, USA (2011)
Berners-Lee, T.: Long live the web. Sci. Am. (12) (2010)
Berners-Lee, T., Cailliau, R., Luotonen, A., Frystyk Nielsen, H., Secret, A.: The world wide web. Communications of the ACM 37(8), 76–82 (1994). doi:10.1145/179606.179671
Berners-Lee, T., Fischetti, M., Dertouzos, M.: Weaving the Web. Harper Collins, San Francisco (1999)
Daigneau, R.: Service Design Patterns: Fundamental Design Solutions for SOAP/WSDL and RESTful Web Services. Addison Wesley, Upper Saddle River (2011)
Dusseault, L., Snell, J.M.: Patch method. http. Internet RFC 5789 (2010)
Erl, T.: Service-Oriented Architecture: Concepts, Technology, and Design. Prentice Hall, Upper Saddle River (2005)
Erl, T., Carlyle, B., Pautasso, C., Balasubramanian, R.: SOA with REST: Principles, Patterns and Constraints for Building Enterprise Solutions with REST. Prentice Hall, Upper Saddle River (2012)
Fielding, R.T.: Architectural styles and the design of network-based software architectures. Ph.D. thesis, University of California, Irvine, Irvine, California (2000)
Fielding, R.T., Gettys, J., Mogul, J.C., Frystyk Nielsen, H., Masinter, L., Leach, P.J., Berners-Lee, T.: Hypertext transfer protocol. http/1.1. Internet RFC 2616 (1999)
Fielding, R.T., Taylor, R.N.: Principled design of the modern web architecture. ACM Trans. Internet Technol. 2(2), 115–150 (2002). doi:10.1145/337180.337228
Goland, Y.Y., Whitehead, E.J., Faizi, A., Carter, S., Jensen, D.: Http extensions for distributed authoring—webdav. Internet RFC 2518 (1999)
Hadley, M., Sandoz, P.: JAX-RS: The java api for restful web services. Java Specification Request (JSR) 311 (2009)
Maleshkova, M., Pedrinaci, C., Domingue, J.: Investigating web apis on the world wide web. In: Proceedings of the 8th IEEE European Conference on Web Services (ECOWS2010), pp. 107–114 (2010). doi:10.1109/ECOWS.2010.9
Nielsen, J.: User interface directions for the web. Commun. ACM 42(1), 65–72 (1999). doi:10.1145/291469.291470
Papazoglou, M.P., van den Heuvel, W.J.: Service oriented architectures: approaches, technologies and research issues. VLDB J. 16, 389–415 (2007)
Parastatidis, S., Webber, J., Silveira, G., Robinson, I.: The role of hypermedia in distributed system development. In: Pautasso et al. [21], pp. 16–22. doi:10.1145/1798354.1798379
Pautasso, C., Wilde, E., Marinos, A. (eds.): First International Workshop on RESTful Design (WS-REST 2010). Raleigh, North Carolina (2010)
Pautasso, C., Wilde, E.: Why is the web loosely coupled? a multi-faceted metric for service design. In: Quemada, J., León, G., Maarek, Y.S., Nejdl, W. (eds.) 18th International World Wide Web Conference, pp. 911–920. ACM Press, Madrid, Spain (2009)
Pautasso, C., Zimmermann, O., Leymann, F.: Restful web services vs. "big" web services: Making the right architectural decision. In: Huai, J., Chen, R., Hon, H.W., Liu, Y., Ma, W.Y., Tomkins, A., Zhang X. (eds.) 17th International World Wide Web Conference, pp. 805–814. ACM Press, Beijing, China (2008)
Richardson, L.: Developers like hypermedia, but they don’t like web browsers. In: Pautasso et al. [21], pp. 4–9. doi:10.1145/1798354.1798377
Richardson, L., Ruby, S.: RESTful Web Services. O’Reilly & Associates, Sebastopol (2007)
Tilkov, S.: REST und HTTP: Einsatz der Architektur des Web für Integrationsszenarien. dpunkt.verlag, Heidelberg, Germany (2009)
Tilkov, S.: REST litmus test for web frameworks (2010). http://www.innoq.com/blog/st/2010/07/rest_litmus_test_for_web_frame.html
Vinoski, S.: Restful web services development checklist. IEEE Internet Comput. 12(6), 94–96 (2008). doi:10.1109/MIC.2008.130
Vinoski, S.: Rpc and rest: Dilemma, disruption, and displacement. IEEE Internet Comput. 12(5), 92–95 (2008)
Vinoski, S.: Serendipitous reuse. IEEE Internet Comput. 12(1), 84–87 (2008). doi:10.1109/MIC.2008.20
Webber, J., Parastatidis, S., Robinson, I.: REST in Practice: Hypermedia and Systems Architecture. O’Reilly & Associates, Sebastopol (2010)
Wilde, E., Pautasso, C. (eds.): REST: From Research to Practice. Springer, Heidelberg (2011)
Zuzak, I., Schreier, S.: Arrested development: guidelines for designing REST frameworks. Internet Comput. 16(4), 26–35 (2012)
Acknowledgments
Many thanks to Erik Wilde for all the help in preparing and running four editions of a successful WWW and ICWE tutorial on RESTful Web Services.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer Science+Business Media New York
About this chapter
Cite this chapter
Pautasso, C. (2014). RESTful Web Services: Principles, Patterns, Emerging Technologies. In: Bouguettaya, A., Sheng, Q., Daniel, F. (eds) Web Services Foundations. Springer, New York, NY. https://doi.org/10.1007/978-1-4614-7518-7_2
Download citation
DOI: https://doi.org/10.1007/978-1-4614-7518-7_2
Published:
Publisher Name: Springer, New York, NY
Print ISBN: 978-1-4614-7517-0
Online ISBN: 978-1-4614-7518-7
eBook Packages: Computer ScienceComputer Science (R0)