Writing unconditionally compliant HTTP servers using EWF - without knowing the HTTP specification

by Colin Adams (modified: 2013 Aug 21)

As of yesterday, there is a new experimental, higher-level framework in the developers version of EWF. The idea is that a developer of an Eiffel web server should not need to know anything about the HTTP/1.1 specification (http://www.w3.org/Protocols/rfc2616/rfc2616.html), and yet still write unconditionally compliant (all MUSTs and SHOULDs of the specification are met) code.

The framework is policy driven. That is, the developer writes a set of policies (that is, effects some deferred classes) to tell the framework how to handle caching of responses, when resources (as denoted by URIs) have moved or been removed, how to handle the OPTIONS method, and whether or not to insist that HTTP/1.0 requests go through a proxy (to convert them to convert them to HTTP/1.1 requests). The rest is just content generation (i.e. business logic).

A tutorial is available at https://github.com/EiffelWebFramework/EWF/wiki/Using-the-policy-driven-framework.