Resources¶
/resource</path/to/resource>¶
-
- Method
- Action
- Status code
- Parameters
-
- GET
- Download a resource, list contents of directory, or show formatted resource metadata.
- 200
- operation (default | metadata); format (html | xml | json)
-
- HEAD
- Show resource metadata in HTTP headers.
- 200
-
- PUT
- Upload/move/copy a resource, create directories on the fly (overwrite if exists). For move/copy operations, place source path in body. Copying is not supported for directories.
- 200 (exists) 201 (new)
- operation (default | copy | move)
-
- DELETE
- Delete a resource (recursively if directory)
- 200
Exceptions¶
-
- Exception
- Status code
-
- GET or DELETE for a resource that does not exist
- 404
-
- PUT to directory
- 405
-
- PUT method=copy with source directory
- 405
-
- PUT with source path that doesn't exist
- 404
-
- POST
- 405
Headers¶
-
- Header
- Description
-
- Last-Modified
- When resource was last modified.
-
- Content-Type
- Will guess mime-type from extension or content.
-
- Resource-Type (custom)
- directory | resource
-
- Resource-Parent (custom)
- Path to parent
Format¶
Examples are given in XML. The JSON and HTML formats are analogue.
Metadata¶
<ResourceMetaData>
<name> nameOfFile </name>
<parent> <path> path/to/parent </path>
<atom:link xmlns:atom="http://www.w3.org/2005/Atom" rel="alternate"
href="http://localhost:8080/geoserver/rest/resource/path/to/parent?operation=metadata&format=xml"
type="application/xml"/>
</parent>
<lastModified> date </lastModified>
<type> undefined | resource | directory </type>
</ResourceMetaData>
Directories¶
<ResourceDirectory>`
<name> nameOfDirectory </name>
<parent> <path> path/to/parent </path>
<atom:link xmlns:atom="http://www.w3.org/2005/Atom" rel="alternate"
href="http://localhost:8080/geoserver/rest/resource/path/to/parent?operation=metadata&format=xml"
type="application/xml"/>
</parent>
<lastModified> date </lastModified>
<children>
<child>
<name> ... </name>
<atom:link xmlns:atom="http://www.w3.org/2005/Atom" rel="alternate"
href="http://localhost:8080/geoserver/rest/resource/path/to/child"/>
</child>
<child>
...
</child>
...
</children>`
</ResourceDirectory>