Try OpenEdge Now
skip to main content
Programming Interfaces
Input/Output Processes : Making HTTP(S) requests from ABL applications : Introduction
 

Introduction

The OpenEdge.Net.pl procedure library implements an HTTP Client feature that is designed for use as an API for making HTTP requests from ABL applications. The HTTP Client feature is designed to have a simple, extensible programming interface, which is platform independent. It can be incorporated in most ABL clients, including GUI, TTY, batch, and AppServer.
OpenEdge.Net.plis installed as source code (in $DLC/src/netlib) and as r-code ( in $DLC/gui/netlib and $DLC/tty/netlib).
The HTTP Client feature includes:
*Support of most HTTP methods (verbs) such as GET, PUT, POST, and DELETE
*Availability of a stateful client for managing cookies
*Support for proxy servers that can be used on a per-request or per-client basis
*Automatic request redirection based on returned status codes
*An extensible authentication mechanism, including support for HTTP Basic and Digest authentication
There are no restrictions on the content type of the request or response payload. In certain cases (JSON, XML and certain binary formats), a response returns the payload (the entity) to the caller in a strongly-typed form (for example, a JsonObject for application/json content). Both common and custom content type handlers can easily be added to the library.
The HTTP Client feature supports much of the HTTP 1.1 specification, with some notable exceptions:
*It is not a rendering engine. It only retrieves data and has no support for caching.
*Streaming is not supported.
*Decompression of a zipped payload is not supported. It can retrieve zipped data, but you must implement your own decompression functionality.