Web Services

A web service is software that makes its functionality available over the Internet.

There are now two commonly-used architectures for web services:

  • Simple Object Access Protocol (SOAP) requires the use of XML for communication, and WSDL (Web Services Description Language) for describing how the web service works. SOAP messages are conveyed by Internet protocols such as HTTP.

    SOAP-based web services are typically used for business-to-business communication, in enterprise applications, or when data is dynamic or stateful.

  • Representational State Transfer (REST) uses HTTP for data transport, but the data can be represented in other ways than XML, such as JSON, HTML, CSV, and or a binary file. REST does not use WSDL to describe its interfaces and data formats, so developers must consult the vendor documentation to find out what the API requires.

    REST-compliant (RESTful) web services are typically used in web and mobile apps, which have limited bandwidth. For example, vendors such as Amazon, DropBox, Google, and OneDrive provide RESTful APIs for text and file transfer.

Uniface supports both SOAP and REST web services. The choice for using one architecture over another depends on your own requirements and that of the services your application consumes.

You can use Uniface to create web services that are consumed by other applications (web service call-in), or you can consume web services provided by others (web service call-out).

Both SOAP and REST use the open-source libcurl library for secure HTTP (HTTPS) support on all platforms. For more information, see HTTPS Protocol.