
Default
Es wird ein neues Dokument mit der angegebenen docId angelegt. Mehrere Komponenten werden in das Content-Repository gestellt. Die Schutzwürdigkeit richtet sich nach dem am Content-Server eingestellten Standard.
Zugriffsart
anlegen (c)
Client -> Server
Folgende Parameter existieren:
|
Parameter |
Angabenotwendigkeit |
Default |
Position |
Signieren |
|
contRep |
obligatorisch |
URL |
X |
|
|
compId |
obligatorisch |
Body |
||
|
docId |
obligatorisch |
URL |
X |
|
|
pVersion |
obligatorisch |
URL |
||
|
Content-Type |
optional |
Body |
||
|
charset |
optional |
Body |
||
|
version |
optional |
Body |
||
|
Content-Length |
obligatorisch |
Header-Body |
||
|
docProt |
optional |
Server-Einstellung |
URL |
X |
|
accessMode |
s-mandatory |
URL |
X |
|
|
authId |
s-mandatory |
URL |
X |
|
|
expiration |
s-mandatory |
URL |
X |
|
|
secKey |
optional |
URL |
Beim HTTP-POST bezeichnet die Content-Length im Request-Header wieder die Gesamtlänge des Bodys und die Content-Length im Header jedes Parts die Länge der einzelnen Content-Einheiten. Beim HTTP-PUT bezeichnet die Content-Length immer die Gesamtlänge des Bodys.
Es ist ein Unterschied, ob der Parameter docProt nicht übergeben wird oder ob als docProt nichts übergeben wird ( docProt=). Im ersten Fall wird der Default des Content-Servers verwendet. Im zweiten Fall wird hingegen explizit festgelegt, dass keine Schutzwürdigkeit vorliegt.
s-mandatory heißt, dass dieser Parameter nur angegeben werden muss, wenn die URL signiert wird.
Die Daten werden als HTTP-POST und als multipart/form-dataübertragen. In der URL werden die Informationen über den Dokumentenkopf übertragen. Im Body werden eine oder mehrere Komponenten übertragen. Diese Ausprägung der Funktion eignet sich insbesondere dazu, Dokumente, die aus mehreren Komponenten bestehen, auf einmal ins Content-Repository zu übertragen. Im Header eines jeden Teils werden die Informationen der jeweiligen Komponente angegeben; im Body des Teils werden die Daten übertragen.
Konkret heißt das, dass in der URL die Parameter contRep, docId, pVersion, docProt, accessMode, authId, expiration und secKey erscheinen. Alle anderen Parameter stehen im Body.
Der Body des Request hat das Format multipart/form-data. Mit diesem Format ist es möglich, mehrere voneinander unabhängige Teile auf einen HTTP-Server zu übertragen. Die einzelnen Teile verfügen über einen Header und einen Body. Sie halten sich an das MIME-Format (RFC 2045, 2046). Durch dieses Format ist es möglich, mehrere Komponenten gleichzeitig auf den Server zu übertragen. Tritt beim Ablegen einer Komponente ein Fehler auf, so wird die gesamte Aktion rückgängig gemacht.
Im Header eines jeden Parts stehen die Parameter compId und Content-Type. Die CompId wird im Feld X-compIdübergeben. Die Länge einer Komponente steht im Feld Content-Length. Die Parameter charset und version können als Parameter an den Content-Type angehängt werden.
Beispiel 1
http://pswdf009:1080/ContentServer/ContentServer.dll?create&pVersion=0046&contRep=K1&docId=4B7689654E73D21197E70060B0672A3C
Es wird ein Dokument, bestehend aus einer oder mehreren Komponenten, im Format multipart/form-dataübertragen.
Document header
Content-Type: multipart/form-data; boundary=A495ukjfasdfddrg4hztzu898aA0jklm
...some more header information...
Content-Length: 32413
Content part
--A495ukjfasdfddrg4hztzu898aA0jklm
X-compId: data
Content-Type: application/msword; charset=ISO-8859-1; version=6
Content-Length: 4242
... 4242 Bytes Data ...
--A495ukjfasdfddrg4hztzu898aA0jklm--
Beispiel 2 (create mit 0 Komponenten)
http://pswdf009:1080/ContentServer/ContentServer.dll?create&pVersion=0046&contRep=M1&docId=3810FF00804C257DE10000009B38FA09&docProt=ud&accessMode=c&authId=CN%3DKPR&expiration=19991025080635&secKey=MIIBlQYJKoZIhvcNA...
Es wird ein Dokument, bestehend aus einer oder mehreren Komponenten, im Format multipart/form-dataübertragen.
Document header
Content-Type: multipart/form-data; boundary=KoZIhvcNAQcB
...some more header information...
Content-Length: 38
Content part
--KoZIhvcNAQcB
--KoZIhvcNAQcB--
Server -> Client
Der Server antwortet auf den Request mit einem Response. Anhand des Statuscodes des Response kann der Erfolg des Aufrufs abgelesen werden.
|
HTTP-Statuscode |
Bedeutung |
|
201 (created) |
OK, Dokument(e) angelegt |
|
400 (bad request) |
Unbekannte Funktion oder unbekannte Parameter |
|
401 (unauthorized) |
Sicherheitsverletzung |
|
403 (forbidden) |
Dokument existiert bereits |
|
500 (Internal Server Error) |
Interner Fehler im Content-Server |
Die Daten ( dateC bzw. compDateC) und die Uhrzeiten ( timeC bzw. compTimeC) sowohl für die Erstellung der Komponenten als auch des Dokuments müssen vom Content-Server gesetzt werden.