Web Services in Drupal 8: Modules For Greater Mobility
Web services enable external applications to interact with other applications in a way that is efficient and secure.
Usually, an external application needs to update, read, or otherwise interact with resources that are stored within the database of the principal application. In Drupal's case, this type of interaction has been exceedingly difficult until the recent introduction of RESTful Web Services within the Drupal Core.
The RESTful Web Services are made up of a series of individual modules, including REST, Serialization, HAL, and HTTP Basic Authentication. They are designed for use with Drupal 8. REST supports cookie authentication as well as DELETE, POST, and PATCH and GET operations.
The Serialization module, meanwhile, allows users to serialize data from the JSON and XML formats. HAL extends this serialization to multi-media formats, allowing users to work with links and embedding functions.
Finally, the HTTP Basic Authentication does exactly what you would expect it to: it allows a username and password to be set up in conjunction with each of these commands in order to preserve the security of each action. Although the introduction of the web services to the Drupal Core is not flawless, it is a vast improvement on the previous patchwork applications and workarounds that programmers previously had to use.
Depending on which particular module or functionality a programmer seeks, an additional application or security module/app may well save time and effort. As an example, the HTTP Basic Authentication module may be surpassed in terms of security by the OAuth Module, which has been designed to work with Drupal 8.
However, the new bundled modules are relatively easy to activate. After installing Drupal 8, programmers can simply "enable" the REST module functions. For certain user permissions, programmers may have to edit individual files, but after this initial activation, they may begin enjoying the benefits of smooth, integrated web services.