HTTP Reference Guide

Welcome to the HTTP Reference Guide home page!

Micrium Vision

HTTP (HyperText Transfer Protocol) was developed as the protocol to sustain the deployment of the World Wide Web. Since the beginning of the Web, the protocol has evolved and transformed to follow the never stopping growing of the Web and to support its different mutations. Today, the protocol continues to be in constant evolution under the supervision of the IETF (Internet Engineering Task Force). HTTP remains extremely popular and widely used due to its, amongst other things, flexibility and simplicity. All of this contributed to establish HTTP as one of the more important protocols of the Internet and one of the protocols of predilection for the future of the Web but also for the era of inter-connectivity between devices and Internet of Things (IoT) ahead of us.

The protocol is designed to be part of the Internet Protocol Suite and is intended to be used at the Application level (see OSI model) over a reliable transport layer protocol (almost always TCP in practice). However, its popularity and ease of use has made HTTP becomes more and more an upper layer transport protocol for transactional operations. Indeed, HTTP offers a layer with all the necessary proprieties to make complex transactions with ease.

Micrium HTTP Products

Micrium offers a complete solution to develop HTTP applications. An HTTP client and an HTTP server are available under the µC/HTTP banner. The two products are completely independent. Both the server and the client offer a wide range of features that can be enabled/disabled to accommodate the specific needs or restrictions of every applications.

Products Documentation

Features Available

FeatureDescription
Persistent ConnectionPersistent Connection allows to keep the TCP connection open after an HTTP transaction so that multiple HTTP transactions can occurs on the same open TCP connection.
Query StringQuery String can be added after the URL in an HTTP request. It contains additional information relative to the HTTP request being made.
Header FieldsAn HTTP message (request and response) can contains many header fields to pass addition information related to the HTTP transaction or the connection.
FormForm can be used to pass data to an HTTP server. They were initially integrated in HTLM file. They can also be used to upload file.
Chunked Transfer EncodingWhen the size of the data is not known before starting to send the HTTP message, Chunk Transfer Encoding can be used instead of using the Content-Length header.
Dynamic ContentµC/HTTP offers different way of adding dynamic contents inside a web page. It can be done with our Token Replacement feature or by using Javascript client script.
WebSocketWebSocket is a network protocol that defines a full-duplex communication over an open TCP connection. HTTP protocol is used to switch from HTTP protocol to WebSocket.
RESTREST is a software architecture concept for web services. The µC/HTTP-server offers a REST module to facilitate the development of RESTful server applications.

HTTP Protocol Fields recognized by the Micrium products

To see what is recognized by the HTTP server and client stack from the HTTP protocol standard, go to section HTTP Protocol Fields Recognized.