Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents
Table of Contents
minLevel1
maxLevel2
outlinefalse
typelist
printablefalse

This overview of the Simple Content Storage Protocol (SCSP) methods explains how they map to the corresponding HTTP methods.

SCSP as a

...

Subset of HTTP

The mechanism that applications use to communicate with Swarm is a text-based protocol based on HTTP. Known as theSimple Content Storage Protocol (SCSP), the methods and syntax are a proper subset of the HTTP/1.1 standard.

...

Swarm assumes communication with an HTTP/1.1 compliant client application.

See https://perifery.atlassian.net/wiki/spaces/public/pages/2443811229/Working+with+Large+Objects?search_id=f1561087-b409-44d5-a6fc-f0765f37d8a2.

See the /wiki/spaces/DOCS/pages/2443822872 for the API-level implementation of SCSP. The SDK helps developers write integrations to Swarm. The SDK includes sample code in Java, Python, C++, and C#.

Mapping SCSP to HTTP

...

Methods

The following table maps SCSP methods to complementary HTTP methods.

SCSP Method

HTTP Method

RFC 7231 Section

READ

GET

4.3.1

INFO

HEAD

4.3.2

WRITE

POST

4.3.3

UPDATE

PUT

4.3.4

DELETE

DELETE

4.3.5

n/a

CONNECT

4.3.6

n/a

OPTIONS

4.3.7

n/a

TRACE

4.3.8

APPEND



COPY



SCSP

...

Protocol

Most HTTP communication is initiated by a client application and consists of a request to be applied to an object on a Swarm server. This is performed using a single connection between the client application and the Swarm server. Being HTTP-based, SCSP protocol consists of HTTP requests and responses:

  • Requestsare generated by a Swarm client (that is, any HTTP/1.1 client), with these components:

  • Responses are generated by one or more nodes in a storage cluster, with these components:

    • Status line, with the message's protocol version and a success or error code

    • MIME-like message, with server information, entity metadata, and possible entity-body content

See the theHTTP/1.1 specification for the semantics and nuances of HTTP.

...