Anfang des Inhaltsbereichs

Hintergrunddokumentation Funktion: docGet Dokument im Navigationsbaum lokalisieren

Der gesamte Content zu einem Dokument wird aus dem Content-Repository geholt.

Die Funktion liefert einen Fehler, wenn eine falsche docId angegeben wurde. Es tritt der Fehler 404 (not found) auf.

Bei Erfolg werden die Daten als Entity-Body im Format multipart/form-data (siehe RFC 1867) als Antwort auf einen HTTP-GET-Request übertragen.

-

lesen (r)

Der Client sendet ein HTTP-GET-Request. In der URL sind folgende Parameter angegeben:

Parameter

Angabenotwendigkeit

Default

signieren

contRep

obligatorisch

 

X

docId

obligatorisch

 

X

pVersion

obligatorisch

   

accessMode

s-mandatory

 

X

authId

s-mandatory

 

X

expiration

s-mandatory

 

X

secKey

optional

   

Hinweis

s-mandatory heißt, dass dieser Parameter nur angegeben werden muss, wenn die URL signiert wird.

http://pswdf009:1080/ContentServer/ContentServer.dll?docGet&pVersion=0046&contRep=K1&docId=361A524A3ECB5459E0000800099245EC

Der gesamte Content eines Dokuments wird zum Client übertragen.

Der Server antwortet auf den Request mit einem Response. Anhand des Statuscodes des Response kann der Erfolg des Aufrufs abgelesen werden.

HTTP-Statuscode

Bedeutung

200 (OK)

OK, Dokument wird übertragen

400 (bad request)

Unbekannte Funktion oder unbekannte Parameter

401 (unauthorized)

Sicherheitsverletzung

404 (not found)

Dokument/Komponente nicht gefunden

409 (conflict)

Dokument/Komponente ist nicht zugreifbar

500 (Internal Server Error)

Interner Fehler im Content-Server

Der Server sendet eine Antwort im Format multipart/form-data (siehe RFC 1867). Die einzelnen Teile des Bodys werden durch eine Boundary getrennt, die im Response-Header definiert wird. Im Gegensatz zum info-Befehl werden die Komponenten beim docGet tatsächlich übertragen und die Länge der übertragenen Komponenten im Feld Content-Length der jeweiligen Komponente angegeben, d. h. Content-Length und X-Content-Length haben identische Werte. Es werden folgende Informationen zum Dokument im Response-Header angezeigt:

Schlüsselwort

Format

Bedeutung

Content-Type

String

Content-Type, immer multipart/form-data

boundary

String

Trennmarke zwischen den einzelnen Komponenten

Content-Length

Integerstring

Gesamtlänge des tatsächlich übertragenen Bodys

X-dateC

YYYY-MM-DD

Datum der Erstellung (UTC)

X-timeC

HH:MM:SS

Zeitpunkt der Erstellung

X-dateM

YYYY-MM-DD

Datum der letzten Änderung (UTC)

X-timeM

HH:MM:SS

Zeitpunkt der letzten Änderung (UTC)

X-numComps

Integerstring

Anzahl der Komponenten

X-contRep

String

Content-Repository

X-docId

String

Dokumenten-Id

X-docStatus

String

Status

X-pVersion

String

Version

 

Es werden folgende Informationen zu einer Komponente im jeweiligen Komponenten-Header angezeigt:

Schlüsselwort

Format

Bedeutung

Content-Type

String

Content-Type (falls bekannt)

charset

String

Zeichensatz (falls bekannt)

version

String

 

Content-Length

Integerstring

Größe der Komponente in Byte

X-Content-Length

Integerstring

Größe der Komponente in Byte

X-compId

String

Komponenten-Id

X-compdateC

YYYY-MM-DD

Datum der Erstellung (UTC)

X-compTimeC

HH:MM:SS

Zeitpunkt der Erstellung

X-compDateM

YYYY-MM-DD

Datum der letzten Änderung (UTC)

X-compTimeM

HH:MM:SS

Zeitpunkt der letzten Änderung (UTC)

X-compStatus

String

Status der Komponente

X-pVersion

String

Schnittstellenversion

Wenn der charset einer Komponente bekannt ist, muss dieser als Parameter des Content-Type mit übertragen werden. Ebenfalls muss der Parameter version (d. h. die Versionsnummer der Applikation, mit der der Inhalt der Komponente erstellt wurde – siehe Parameter und Schlüsselworte) einer Komponente als Parameter des Content-Type mit übertragen werden, wenn er bekannt ist.

HTTP/1.1 200 (OK)
Server: Microsoft-IIS/4.0
Date: Wed, 04 Nov 1998 07:41:03 GMT
Content-Type: multipart/form-data; boundary=A495ukjfasdfddrg4hztzu...
...some more header informations...
Content-Length: 32413
X-dateC: 1998-10-07
X-timeC: 07:55:57
X-dateM: 1998-10-07
X-timeM: 07:55:57
X-contRep: K1
X-numComps: 2
X-docId: ID
X-docStatus: online
X-pVersion: 0045

--A495ukjfasdfddrg4hztzu898aA0jklmAxcvla12319981147528895
Content-Type: application/x-alf; charset=
Content-Length: 2591
X-compId: descr
X-Content-Length: 2591
X-compDateC: 1998-10-07
X-compTimeC: 07:55:57
X-compDateM: 1998-10-07
X-compTimeM: 07:55:57
X-compStatus: online
X-pVersion: 0045

...component data ...
--A495ukjfasdfddrg4hztzu898aA0jklmAxcvla12319981147528895

Content-Type: application/x-alf; charset=
Content-Length: 29313
X-compId: data
X-Content-Length: 29213
X-compDateC: 1998-10-07
X-compTimeC: 07:55:57
X-compDateM: 1998-10-07
X-compTimeM: 07:55:57
X-compStatus: online
X-compStatus: online
X-pVersion: 0045

...component data ...
--A495ukjfasdfddrg4hztzu898aA0jklmAxcvla12319981147528895—

 

 

Beim docGet-Kommando auf ein leeres Dokument steht im Response-Body beispielsweise nichts zwischen den Boundaries:

--A495ukjfasdfddrg4hztzu898aA0jklmAxcvla1231999102562159269

--A495ukjfasdfddrg4hztzu898aA0jklmAxcvla1231999102562159269--

Ende des Inhaltsbereichs