RESTful Web Clients

Enabling Reuse Through Hypermedia

Author: Mike Amundsen

Publisher: "O'Reilly Media, Inc."

ISBN: 1491921854

Category: Computers

Page: 350

View: 9946

Release On

Powerful web-based REST and hypermedia-style APIs are becoming more common every day, but instead of applying the same techniques and patterns to hypermedia clients, many developers rely on custom client code. With this practical guide, you’ll learn how to move from one-off implementations to general-purpose client apps that are stable, flexible, and reusable. Author Mike Amundsen provides extensive background, easy-to-follow examples, illustrative dialogues, and clear recommendations for building effective hypermedia-based client applications. Along the way, you’ll learn how to harness many of the basic principles that underpin the Web. Convert HTML-only web apps into a JSON API service Overcome the challenges of maintaining plain JSON-style client apps Decouple the output format from the internal object model with the representor pattern Explore client apps built with HAL—Hypertext Application Language Tackle reusable clients with the Request, Parse, Wait Loop (RPW) pattern Learn the pros and cons of building client apps with the Siren content type Deal with API versioning by adopting a change-over-time aesthetic Compare how JSON, HAL, Siren, and Collection+JSON clients handle the Objects/Addresses/Actions Challenge Craft a single client application that can consume multiple services

Building Hypermedia APIs with HTML5 and Node

Author: Michael Amundsen,Mike Amundsen

Publisher: "O'Reilly Media, Inc."

ISBN: 1449306578

Category: Computers

Page: 219

View: 9224

Release On

With this concise book, you’ll learn the art of building hypermedia APIs that don’t simply run on the Web, but that actually exist in the Web. You’ll start with the general principles and technologies behind this architectural approach, and then dive hands-on into three fully-functional API examples. Too many APIs rely on concepts rooted in desktop and local area network patterns that don’t scale well—costly solutions that are difficult to maintain over time. This book shows system architects and web developers how to design and implement human- and machine-readable web services that remain stable and flexible as they scale. Learn the H-Factors for representing application metadata across all media types and formats Understand the four basic design elements for authoring hypermedia types Convert a simple read-only XML-based media type into a successful API design Examine the challenges and advantages of designing a hypermedia type with JSON Use HTML5’s rich set of hypermedia controls in the API design process Learn the details of documenting, publishing, and registering media type designs and link-relation types

RESTful Web APIs

Services for a Changing World

Author: Leonard Richardson,Mike Amundsen,Sam Ruby

Publisher: "O'Reilly Media, Inc."

ISBN: 1449359736

Category: Computers

Page: 406

View: 1861

Release On

The popularity of REST in recent years has led to tremendous growth in almost-RESTful APIs that don’t include many of the architecture’s benefits. With this practical guide, you’ll learn what it takes to design usable REST APIs that evolve over time. By focusing on solutions that cross a variety of domains, this book shows you how to create powerful and secure applications, using the tools designed for the world’s most successful distributed computing system: the World Wide Web. You’ll explore the concepts behind REST, learn different strategies for creating hypermedia-based APIs, and then put everything together with a step-by-step guide to designing a RESTful Web API. Examine API design strategies, including the collection pattern and pure hypermedia Understand how hypermedia ties representations together into a coherent API Discover how XMDP and ALPS profile formats can help you meet the Web API "semantic challenge" Learn close to two-dozen standardized hypermedia data formats Apply best practices for using HTTP in API implementations Create Web APIs with the JSON-LD standard and other the Linked Data approaches Understand the CoAP protocol for using REST in embedded systems

REST in Practice

Hypermedia and Systems Architecture

Author: Jim Webber,Savas Parastatidis,Ian Robinson

Publisher: "O'Reilly Media, Inc."

ISBN: 0596805829

Category: Computers

Page: 428

View: 5269

Release On

REST continues to gain momentum as the best method for building Web services, and this down-to-earth book delivers techniques and examples that show how to design and implement integration solutions using the REST architectural style.

RESTful Rails Development

Building Open Applications and Services

Author: Silvia Puglisi

Publisher: "O'Reilly Media, Inc."

ISBN: 1491910836

Category: COMPUTERS

Page: 304

View: 1515

Release On

The Web is slowly but surely changing from a model in which a human reader browses content on web pages to a model in which services and clients (not necessarily humans) exchange information. And because of this, author Silvia Puglisi explains, it makes more sense to build platforms instead of just products or applications. Platforms are like ecosystems interconnecting different applications, services, users, developers, and partners, and offer many benefits. In this book, you'll learn how to design and develop Representational State Transfer (REST) platforms in Rails. You'll begin with an introduction to Ruby on Rails, and then move quickly through new concepts. At the end of each chapter, you'll have learned something new about building and organically extending a multi-service platform spanning different devices—and will have had some fun in the process. By the end of the book you'll know how to build an architecture composed of different services accessing shared resources through a set of collaborating APIs and applications. Explore the basics of REST and HTTP, including REST architecture and the role of hypermedia Get to know Rails and Ruby on Rails Learn about API development and create an API Take a thorough look at REST, including Asynchronous REST and testing RESTful services Work with data streams as you map them onto an application UI and integrate external APIs in your application Learn about device-independent development Use data analytics to recognize important events, develop key metrics, and track them Explore various tools you can use to build your own data analytic platform Learn how to scale a Rails application successfully Examine privacy and security issues and the implications of handling and collecting user data

Lightweight Django

Author: Julia Elman,Mark Lavin

Publisher: "O'Reilly Media, Inc."

ISBN: 149194630X

Category: Computers

Page: 246

View: 3339

Release On

How can you take advantage of the Django framework to integrate complex client-side interactions and real-time features into your web applications? Through a series of rapid application development projects, this hands-on book shows experienced Django developers how to include REST APIs, WebSockets, and client-side MVC frameworks such as Backbone.js into new or existing projects. Learn how to make the most of Django’s decoupled design by choosing the components you need to build the lightweight applications you want. Once you finish this book, you’ll know how to build single-page applications that respond to interactions in real time. If you’re familiar with Python and JavaScript, you’re good to go. Learn a lightweight approach for starting a new Django project Break reusable applications into smaller services that communicate with one another Create a static, rapid prototyping site as a scaffold for websites and applications Build a REST API with django-rest-framework Learn how to use Django with the Backbone.js MVC framework Create a single-page web application on top of your REST API Integrate real-time features with WebSockets and the Tornado networking library Use the book’s code-driven examples in your own projects

Mastering JavaScript Single Page Application Development

Author: Philip Klauzinski,John Moore

Publisher: Packt Publishing Ltd

ISBN: 1785886444

Category: Computers

Page: 452

View: 8748

Release On

An in-depth guide to exploring the design, architecture, and techniques behind building sophisticated, scalable, and maintainable single-page applications in JavaScript About This Book Build large-scale, feature-complete SPAs by leveraging widely used tools and techniques. Gain a solid understanding of architecture and SPA design to build applications using the library or framework of your choice. Explore the various facets of SPA development to build web apps that are fast, scalable, and easy to test. Who This Book Is For This book is ideal for JavaScript developers who want to build complex single-page applications in JavaScript. Some basic understanding of SPA concepts will be helpful but not essential. What You Will Learn Organize your development environment using the command line with NPM, Bower, and Grunt. Choose an accurate design pattern for your app Understand modular JavaScript programming and Node.js Interact with a REST API using JavaScript and AJAX with practical examples Build a single page application using the MEAN stack Connect your app across popular social media platforms such as Facebook, Twitter, and LinkedIn Test your app, both on the server side and in views Prepare your app for the real world and deploy it to Heroku In Detail Single-page web applications—or SPAs, as they are commonly referred to—are quickly becoming the de facto standard for web app development. The fact that a major part of the app runs inside a single web page makes it very interesting and appealing. Also, the accelerated growth of browser capabilities is pushing us closer to the day when all apps will run entirely in the browser. This book will take your JavaScript development skills to the next level by teaching you to create a single-page application within a full-stack JavaScript environment. Using only JavaScript, you can go from being a front-end developer to a full-stack application developer with relative ease. You will learn to cross the boundary from front-end development to server-side development through the use of JavaScript on both ends. Use your existing knowledge of JavaScript by learning to manage a JSON document data store with MongoDB, writing a JavaScript powered REST API with Node.js and Express, and designing a front-end powered by AngularJS. This book will teach you to leverage the MEAN stack to do everything from document database design, routing REST web API requests, data-binding within views, and adding authentication and security to building a full-fledged, complex, single-page web application. In addition to building a full-stack JavaScript app, you will learn to test it with JavaScript-powered testing tools such as Mocha, Karma, and Jasmine. Finally, you will learn about deployment and scaling so that you can launch your own apps into the real world. Style and approach Following a structured approach, this book helps readers gain expertise in SPA development. Its thorough coverage of SPA architecture and design, along with practical use cases, provides readers with a clear path to building applications with the library of their choice. For readers who are afraid to take the plunge straightaway, the book also offers step-by-step guidance on developing a complex web app.

Avatars at Work and Play

Collaboration and Interaction in Shared Virtual Environments

Author: Ralph Schroeder,Ann-Sofie Axelsson

Publisher: Springer Science & Business Media

ISBN: 1402038984

Category: Computers

Page: 278

View: 2810

Release On

Avatars at Work and Play brings together contributions from leading social scientists and computer scientists who have conducted research on virtual environments used for collaboration and online gaming. They present a well-rounded and state-of-the-art overview of current applications of multi-user virtual environments, ranging from highly immersive virtual reality systems to internet-based virtual environments on personal computers. The volume is a follow-up to a previous essay collection, ‘The Social Life of Avatars’, which explored general issues in this field. This collection goes further, examining uses of shared virtual environments in practical settings such as scientific collaboration, distributed meetings, building models together, and others. It also covers online gaming in virtual environments, which has attracted hundreds of thousands of users and presents an opportunity for studying a myriad of social issues. Covering both ‘work’ and ‘play’, the volume brings together issues common to the two areas, including: What kind of avatar appearance is suitable for different kinds of interaction? How best to foster collaboration and promote usable shared virtual spaces? What kinds of activities work well in different types of virtual environments and systems?

Knowledge Retention

Strategies and Solutions

Author: Jay Liebowitz

Publisher: CRC Press

ISBN: 9781420064667

Category: Business & Economics

Page: 144

View: 4352

Release On

As baby boomers approach retirement age and the work patterns of younger workers constantly change, many organizations worldwide are experiencing a far-reaching knowledge bleed. Therefore, it is imperative that organizations find ways to best leverage and retain that vital knowledge before workers leave the organization and attrition occurs. Answers the Call of Businesses Worldwide In light of global workforce changes, many organizations’ are faced with a dilemma – how to maintain the right set of people at the right time in order to meet the company’s long-term goals and vision. Knowledge Retention: Strategies and Solutions supplies the answer in the form of strategic human capital management. Written by one of the most sought after knowledge management experts, this easy-to-read, concise guide helps companies adopt proven retention strategies and techniques to capture and share knowledge which is otherwise at risk of being lost in transition. The text also discusses key case studies by leading organizations applying knowledge retention strategies. Build Institutional Memory and Social Networks Addresses These Important Questions: How do you know what knowledge is important to capture? What is the best approach to developing a knowledge retention framework? How do you calculate the loss of knowledge? What are the appropriate steps once the damage is assessed? How do you identify knowledge flows and gaps in an organization? Since you never know when someone will retire or move on, the book emphasizes the importance of minimizing business disruption and accelerating competency development. Operating around four key framework pillars – competency, performance, knowledge, and change management – this text demonstrates why a knowledge-retention strategy should be woven into an organization’s fabric from day one.

REST: From Research to Practice

Author: Erik Wilde,Cesare Pautasso

Publisher: Springer Science & Business Media

ISBN: 1441983031

Category: Technology & Engineering

Page: 528

View: 2226

Release On

This volume provides an overview and an understanding of REST (Representational State Transfer). Discussing the constraints of REST the book focuses on REST as a type of web architectural style. The focus is on applying REST beyond Web applications (i.e., in enterprise environments), and in reusing established and well-understood design patterns when doing so. The reader will be able to understand how RESTful systems can be designed and deployed, and what the results are in terms of benefits and challenges encountered in the process. Since REST is relatively new as an approach for designing Web Services, the more advanced part of the book collects a number of challenges to some of the assumptions and constraints of REST, and looks at current research work on how REST can be extended and applied to scenarios that often are considered not to be a good match for REST. This work will help readers to reach a deeper understanding of REST on a practical as well as on an advanced level.

Assessing the Value of E-learning Systems

Author: Yair Levy

Publisher: IGI Global

ISBN: 9781591407287

Category: Education

Page: 284

View: 7402

Release On

"The book provides A guidelines approach on how to implement the proposed theory and tools in e-learning programs"--Provided by publisher.

RESTful Java with JAX-RS 2.0

Designing and Developing Distributed Web Services

Author: Bill Burke

Publisher: "O'Reilly Media, Inc."

ISBN: 1449361455

Category: Computers

Page: 392

View: 5723

Release On

Learn how to design and develop distributed web services in Java, using RESTful architectural principles and the JAX-RS 2.0 specification in Java EE 7. By focusing on implementation rather than theory, this hands-on reference demonstrates how easy it is to get started with services based on the REST architecture. With the book’s technical guide, you’ll learn how REST and JAX-RS work and when to use them. The RESTEasy workbook that follows provides step-by-step instructions for installing, configuring, and running several working JAX-RS examples, using the JBoss RESTEasy implementation of JAX-RS 2.0. Learn JAX-RS 2.0 features, including a client API, server-side asynchronous HTTP, and filters and interceptors Examine the design of a distributed RESTful interface for an e-commerce order entry system Use the JAX-RS Response object to return complex responses to your client (ResponseBuilder) Increase the performance of your services by leveraging HTTP caching protocols Deploy and integrate web services within Java EE7, servlet containers, EJB, Spring, and JPA Learn popular mechanisms to perform authentication on the Web, including client-side SSL and OAuth 2.0

RESTful Web Services

Author: Leonard Richardson,Sam Ruby

Publisher: "O'Reilly Media, Inc."

ISBN: 0596554605

Category: Computers

Page: 454

View: 1041

Release On

"Every developer working with the Web needs to read this book." -- David Heinemeier Hansson, creator of the Rails framework "RESTful Web Services finally provides a practical roadmap for constructing services that embrace the Web, instead of trying to route around it." -- Adam Trachtenberg, PHP author and EBay Web Services Evangelist You've built web sites that can be used by humans. But can you also build web sites that are usable by machines? That's where the future lies, and that's what RESTful Web Services shows you how to do. The World Wide Web is the most popular distributed application in history, and Web services and mashups have turned it into a powerful distributed computing platform. But today's web service technologies have lost sight of the simplicity that made the Web successful. They don't work like the Web, and they're missing out on its advantages. This book puts the "Web" back into web services. It shows how you can connect to the programmable web with the technologies you already use every day. The key is REST, the architectural style that drives the Web. This book: Emphasizes the power of basic Web technologies -- the HTTP application protocol, the URI naming standard, and the XML markup language Introduces the Resource-Oriented Architecture (ROA), a common-sense set of rules for designing RESTful web services Shows how a RESTful design is simpler, more versatile, and more scalable than a design based on Remote Procedure Calls (RPC) Includes real-world examples of RESTful web services, like Amazon's Simple Storage Service and the Atom Publishing Protocol Discusses web service clients for popular programming languages Shows how to implement RESTful services in three popular frameworks -- Ruby on Rails, Restlet (for Java), and Django (for Python) Focuses on practical issues: how to design and implement RESTful web services and clients This is the first book that applies the REST design philosophy to real web services. It sets down the best practices you need to make your design a success, and the techniques you need to turn your design into working code. You can harness the power of the Web for programmable applications: you just have to work with the Web instead of against it. This book shows you how.

Service Design Patterns

Fundamental Design Solutions for SOAP/WSDL and RESTful Web Services

Author: Robert Daigneau

Publisher: Addison-Wesley

ISBN: 0321669606

Category: Computers

Page: 352

View: 4937

Release On

Web services have been used for many years. In this time, developers and architects have encountered a number of recurring design challenges related to their usage, and have learned that certain service design approaches work better than others to solve certain problems. In Service Design Patterns, Rob Daigneau codifies proven design solutions for web services that follow the REST architectural style or leverage the SOAP/WSDL specifications. This catalogue identifies the fundamental topics in web service design and lists the common design patterns for each topic. All patterns identify the context in which they may be used, explain the constituent design elements, and explore the relative strengths and trade-offs. Code examples are provided to help you better understand how the patterns work but are kept general so that you can see how the solutions may be applied to disparate technologies that will inevitably change in the years to come. This book will help readers answer the following questions: How do you create a web service API, what are the common API styles, and when should a particular style be used? How can clients and web services communicate, and what are the foundations for creating complex conversations in which multiple parties exchange data over extended periods of time? What are the options for implementing web service logic, and when should a particular approach be used? How can clients become less coupled to the underlying systems used by a service? How can information about a web service be discovered? How can generic functions like authentication, validation, caching, and logging be supported on the client or service? What changes to a service cause clients to break? What are the common ways to version a service? How can web services be designed to support the continuing evolution of business logic without forcing clients to constantly upgrade? This book is an invaluable resource for enterprise architects, solution architects, and developers who use web services to create enterprise IT applications, commercial or open source products, and Software as a Service (SaaS) products that leverage emerging Cloud platforms.

Microservice Architecture

Aligning Principles, Practices, and Culture

Author: Irakli Nadareishvili,Ronnie Mitra,Matt McLarty,Mike Amundsen

Publisher: "O'Reilly Media, Inc."

ISBN: 1491956348

Category: Computers

Page: 146

View: 3628

Release On

Microservices can have a positive impact on your enterprise—just ask Amazon and Netflix—but you can fall into many traps if you don’t approach them in the right way. This practical guide covers the entire microservices landscape, including the principles, technologies, and methodologies of this unique, modular style of system building. You’ll learn about the experiences of organizations around the globe that have successfully adopted microservices. In three parts, this book explains how these services work and what it means to build an application the Microservices Way. You’ll explore a design-based approach to microservice architecture with guidance for implementing various elements. And you’ll get a set of recipes and practices for meeting practical, organizational, and cultural challenges to microservice adoption. Learn how microservices can help you drive business objectives Examine the principles, practices, and culture that define microservice architectures Explore a model for creating complex systems and a design process for building a microservice architecture Learn the fundamental design concepts for individual microservices Delve into the operational elements of a microservices architecture, including containers and service discovery Discover how to handle the challenges of introducing microservice architecture in your organization

Building Microservices

Author: Sam Newman

Publisher: "O'Reilly Media, Inc."

ISBN: 1491950331

Category: Computers

Page: 280

View: 5737

Release On

Annotation Over the past 10 years, distributed systems have become more fine-grained. From the large multi-million line long monolithic applications, we are now seeing the benefits of smaller self-contained services. Rather than heavy-weight, hard to change Service Oriented Architectures, we are now seeing systems consisting of collaborating microservices. Easier to change, deploy, and if required retire, organizations which are in the right position to take advantage of them are yielding significant benefits. This book takes an holistic view of the things you need to be cognizant of in order to pull this off. It covers just enough understanding of technology, architecture, operations and organization to show you how to move towards finer-grained systems.

RESTful PHP Web Services

Author: Samisa Abeysinghe

Publisher: Packt Publishing Ltd

ISBN: 1847195539

Category: Computers

Page: 221

View: 7790

Release On

Learn the basic architectural concepts and step through examples of consuming and creating RESTful web services in PHP.

REST API Design Rulebook

Author: Mark Masse

Publisher: "O'Reilly Media, Inc."

ISBN: 1449310508

Category: Computers

Page: 94

View: 4541

Release On

The basic rules of REST APIs - "many nouns, few verbs, stick with HTTP" - seem easy, but that simplicity and power require discipline to work smoothly. This brief guide provides next steps for implementing complex projects on simple and extensible foundations.

RESTful Web Services Cookbook

Solutions for Improving Scalability and Simplicity

Author: Subbu Allamaraju

Publisher: "O'Reilly Media, Inc."

ISBN: 9781449388843

Category: Computers

Page: 316

View: 3253

Release On

While the REST design philosophy has captured the imagination of web and enterprise developers alike, using this approach to develop real web services is no picnic. This cookbook includes more than 100 recipes to help you take advantage of REST, HTTP, and the infrastructure of the Web. You'll learn ways to design RESTful web services for client and server applications that meet performance, scalability, reliability, and security goals, no matter what programming language and development framework you use. Each recipe includes one or two problem statements, with easy-to-follow, step-by-step instructions for solving them, as well as examples using HTTP requests and responses, and XML, JSON, and Atom snippets. You'll also get implementation guidelines, and a discussion of the pros, cons, and trade-offs that come with each solution. Learn how to design resources to meet various application scenarios Successfully design representations and URIs Implement the hypertext constraint using links and link headers Understand when and how to use Atom and AtomPub Know what and what not to do to support caching Learn how to implement concurrency control Deal with advanced use cases involving copying, merging, transactions, batch processing, and partial updates Secure web services and support OAuth

Designing Evolvable Web APIs with ASP.NET

Author: Glenn Block,Pablo Cibraro,Pedro Felix,Howard Dierking,Darrel Miller

Publisher: "O'Reilly Media, Inc."

ISBN: 1449337902

Category: COMPUTERS

Page: 538

View: 4848

Release On

Design and build Web APIs for a broad range of clients—including browsers and mobile devices—that can adapt to change over time. This practical, hands-on guide takes you through the theory and tools you need to build evolvable HTTP services with Microsoft’s ASP.NET Web API framework. In the process, you’ll learn how design and implement a real-world Web API. Ideal for experienced .NET developers, this book’s sections on basic Web API theory and design also apply to developers who work with other development stacks such as Java, Ruby, PHP, and Node. Dig into HTTP essentials, as well as API development concepts and styles Learn ASP.NET Web API fundamentals, including the lifecycle of a request as it travels through the framework Design the Issue Tracker API example, exploring topics such as hypermedia support with collection+json Use behavioral-driven development with ASP.NET Web API to implement and enhance the application Explore techniques for building clients that are resilient to change, and make it easy to consume hypermedia APIs Get a comprehensive reference on how ASP.NET Web API works under the hood, including security and testability