Application Programming Interface Application Programming Interface

The most important APIs for Content Management are those that allow a Web Server to become an Application Server by processing HTTP requests, searching the response object for programming code embedded there.

The earliest API was the Common Gateway Interface? that allowed processing of CGI scripts, usually written in Perl?. These scripts dynamically generated the HTML.

CGI was slow because it spawned a new process on the server to run every script. FastCGI and improvements to the popular Apache? Web Server like modPerl allowed multi-threaded processes that were scalable to large numbers of simultaneous hits.

Netscape and Microsoft then developed sophisticated APIs, NSAPI and ISAPI, that worked with their web servers. These allowed the creation of middleware called Server Page, an Object Oriented Design that embedded server-side scripting into HTML web pages.

This was a major step toward separation? of presentation and content, and it allowed web pages to become web applications.

Parameters are passed to the Web Application by attaching data in a Query String? visibly appended to the HTTP? request (using the GET? method) or by invisible data passed by the HTTP POST? method from elements inside an HTML? Form.

An Application Programming Interface is the set of calling conventions by which an application program accesses operating system and other services. An API is defined at source code level and provides a level of abstraction between the application and the kernel (or other privileged utilities) to ensure the portability of the code.

An API can also provide an interface between a high level language and lower level utilities and services which were written without consideration for the calling conventions supported by compiled languages. In this case, the API's main task may be the translation of parameter lists from one format to another and the interpretation of call-by-value and call-by-reference arguments in one or both directions. Hyperdictionary.

CMS Glossary Index | Back