In this video, Nate will introduce the ION specification for building hypermedia APIs in JSON. Nate will cover how ION models links between resources, collections, and resource responses.
- [Narrator] ION is a JSON-based specification for hypermedia and RESTful API's. It's designed to be intuitive and have as little ceremony as possible, so your API responses are clean and easily readable by both humans and machines. In ION, links between resources are modeled as JSON objects with an href property. Like html links, you can include optional attributes that describe the link. The method attribute specifies which http verb should be used to interact with the link and the rel attribute describes whether the target represents a self referential link or collection or a forum and so on.
Resources in ION are modeled as plain JSON objects that include a self referential link. This link can either be contained in an element called self, or implied as part of the resource if the href property exists on the resource. ION defines a special type of object called a value object, which must have a property called value. One of the uses of the value object is modeling a collection of resources. In ION, a collection is a value object that contains an array of resources in the value element.
Collection links use the collection relation to give the client a hint that the object should be (mumbles) as a collection. We're going to model all of our API responses on these basic building blocks. If you want to dig into the details of the ION specification, visit the ION working group on the web at ionwg.org.
- REST vs. RPC
- Using HTTP methods (aka verbs)
- Returning JSON
- Creating a new API project
- Building a root controller
- Routing to controllers with templates
- Requiring HTTPS for security
- Creating resources and data models
- Returning data and resources from a controller
- Representing links (HREFs)
- Representing collections
- Sorting and searching collections
- Creating forms
- Caching and compression
- Authentication and authorization for RESTful APIs
Skill Level Intermediate
Deploying ASP.NET Core Applications (2017)with Nate Barbettini57m 57s Intermediate
1. REST API Concepts
2. Building a Basic API
3. Securing the API
4. Representing Resources
5. Representing Links
6. Representing Collections
7. Sorting Collections
8. Searching Collections
9. Forms and Modifying Data
10. Caching and Compression
11. Authentication and Authorization
- Mark as unwatched
- Mark all as unwatched
Are you sure you want to mark all the videos in this course as unwatched?
This will not affect your course history, your reports, or your certificates of completion for this course.Cancel
Take notes with your new membership!
Type in the entry box, then click Enter to save your note.
1:30Press on any video thumbnail to jump immediately to the timecode shown.
Notes are saved with you account but can also be exported as plain text, MS Word, PDF, Google Doc, or Evernote.