Web/Libraries/CGI

From HaskellWiki
Haskell Web Development

Software:
Servers - Libraries - Frameworks
Deploy - Cloud
Interfaces to frameworks
Databases and Persistence
Testing and Verification
Content Management

Community & Research:
Forums and Discussion
Literature (research, talks and blogs)
Existing Haskell web applications
Ongoing projects and ideas

cgi[edit]

Simple Library for writing CGI programs. This version of the library is for systems with version 2.0 or greater of the network package. This includes GHC 6.6 and later. Features include:

  • Access to CGI parameters (e.g. form input) from both GET and POST requests.
  • Access to CGI environment variables.
  • Ability to set arbitrary response headers.
  • Support for HTTP cookies.
  • Efficient file upload support.
  • Wrapper
License: BSD3
Copyright: Bjorn Bringert, Andy Gill, Anders Kaseorg, Ian Lynagh, Erik Meijer, Sven Panne, Jeremy Shaw
Author: Bjorn Bringert
Maintainer: Anders Kaseorg <andersk@mit.edu>
Home page: http://andersk.mit.edu/haskell/cgi/
Package & repositories Hackage - Git

direct-fastcgi[edit]

This package is a native implementation of the FastCGI protocol, allowing Haskell to work with any webserver that supports it. It makes no attempt to imitate the interface of the cgi-3000 and fastcgi-3000 packages, because that API is tied too heavily to legacy interfaces, as with its handling of exceptions, logging, and time. Its advantage over those packages is primarily in the area of clean exception management and better control structure which allows more versatility in processing requests which are not simple GETs. In particular, POST of large files should be possible, as should server-push responses which return content a piece at a time. Also, of course, as a native implementation, there is no dependency on a C library, which simplifies the install process.

License: BSD3
Copyright: Copyright (c) 2009 Dan Knapp
Author: Dan Knapp
Maintainer: dankna@gmail.com
Home page: http://dankna.com/software/
Package & repositories Hackage

fastcgi[edit]

This library lets you write FastCGI programs. This package reuses the cgi package API, making it very easy to port CGI programs to FastCGI. The FastCGI C development kit is required to build this library.

License: BSD3
Copyright: Bjorn Bringert, Lemmih
Maintainer: Chris Done <chrisdone@gmail.com>
Package & repositories Hackage

SCGI[edit]

This library lets you write SCGI programs. This package reuses the cgi package API, making it very easy to port CGI programs to SCGI.

SCGI is a simpler alternative to FastCGI for writing CGI-like programs in persistent processes, external to the web server. SCGI is less featureful than FastCGI, but has the advantage that it does not require an external library.

Install, import Network.SCGI, and use runSCGI. Everything else is then done inside a CGI monad as above.

License: BSD3
Copyright: (c) Eric Sessoms 2007, (c) Stephen Blackheath 2008
Author: Eric Sessoms <nubgames@gmail.com>, Stephen Blackheath <http://blacksapphire.com/antispam/>
Maintainer: http://blacksapphire.com/antispam/
Package & repositories Hackage