Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The API developer is encouraged to study REST principles and practical examples beyond this rather brief introduction. There are many good online resources. Among these, there is a split between advocates for a more practical approach to REST and those who advocates advocate a more principled approach (these are often referred to as REST purists, or RESTafarians). For those who desire to achieve fully RESTful APIs, The Richardson Maturity Model article provides a nice stepping-stone approach. Thus, it begins with some practical examples that will be easy to adopt, while providing a pathway toward full REST implementation.

It should be noted that while the SRP HTTP Framework is designed around the REST API model, it does not enforce it. Indeed, it can nicely work with any API methodology and replace the standard RUN_OECGI_REQUEST (i.e., INET) utility, although some additional work would need to be done to replace pre-built INET routines. Note, while the SRP HTTP Framework can support INET style applications, RUN_OECGI_REQUEST cannot support REST APIs. The primary reason is that RUN_OECGI_REQUEST intentionally obscures the URL in favor of the INET routine that is named in the end point. Hence, there is no easy way to glean semantics out of the rest of the URL, which makes RESTful approaches useless.Whether or not implementing a comprehensive REST API is intended, developers are strongly encouraged to consider some type of REST design in their web applications for two reasons: 1.) REST is arguably a formalized explanation of the way the internet (via HTTP) is meant to be used. It lays out the principles by which the internet has become so robust, scalable, and accessible. 2.) While REST has been documented for quite some time, there seems to be a significant resurgence of interest in this architecture from small and large online service providers. This is hugely beneficial to the OpenInsight developer because it taps into a reputable and credible methodology that obscures the underlying technology (i.e., Basic+, Linear Hash) that is often a barrier to mainstream acceptancethus rendering RESTful approaches useless.