Changes

Jump to navigation Jump to search
1,096 bytes added ,  17:23, 26 October 2017
This page presents one of the [[Web Application]] services. It describes how to use the WebDAV file system interface.
BaseX offers access to the databases and documents using the [http://en.wikipedia.org/wiki/Webdav WebDAV] protocol. WebDAV provides convenient means to access and edit XML documents by representing BaseX databases and documents in the form of a file system hierarchy.  The implementation in BaseX is based on the [http://milton.io Milton library]. Currently, only Basic Authentication is supported.
=Usage=
By default, the BaseX HTTP server makes the WebDAV service accessible at {{Code|http://localhost:8984/webdav/}}. If no default credentials are specified, and they will be requested by the HTTP server is started with admin credentials client ([[Web Application#User Management|see further]]). It can be accessed by either <code>http:&#47;&#47;<httphost>:<httpport>/webdav/</code> or <code>webdav://<httphost>:<httpport>/webdav/</code>, depending on your WebDAV client.
Please note that the file size of XML documents will be displayed as 0 bytes, as the actual file size can only be determined if the full document is being returned and serialized. This may cause problems with some WebDAV clients (e.g. NetDrive or WebDrive).
The WebDAV service uses the database user credentials in order to perform authentication and authorization. If database user and password are explicitly specified when starting the BaseX HTTP Server using the corresponding [[Command-Line Options#BaseX_HTTP_Server|startup options]], WebDAV will not request additional user authentication from the client.
 
=Root Directory=
 
In the WebDAV root directory, all existing databases are listed. As new resources can only be stored inside a database, it is not possible to store files in the root directory. If a file is copied on top level, a new database will be created, which contains this resource.
 
=Resources=
 
==XML Documents==
 
Uploaded files that start with an angle bracket will be stored as XML files. XML entities will be decoded during this process.
 
If a file is downloaded, the characters with the following code points will be encoded as entities:
 
* 160 (non-breaking space)
* 8192–8207, 8232–8239, 8287–8303 (see http://www.w3schools.com/charsets/ref_utf_punctuation.asp)
 
==Binary Files==
 
If XML parsing files, or if the first character of the input is no angle bracket, the file will be stored as binary resource.
=Locking=
The BaseX WebDAV implementation supports locking. It can be utilized with clients which support this feature (e.g. [[oXygen|oXygen Editor]]). [http://tools.ietf.org/html/rfc4918#section-6.2 EXCLUSIVE and SHARED] locks are supported, as well as [http://tools.ietf.org/html/rfc4918#section-7 WRITE] locks.
'''Note:''' WebDAV locks are stored in a database called <code>~webdav</code>. Implementations should not rely on If the existence of database is deleted, it will automatically be recreated along with the databasenext lock operations. If a resource remains locked, since it may not can be accessible in unlocking by removing the futurecorrespondent <code><w:lockinfo></code> entry.
=WebDAV Clients=
;Version 7.0
* WebDAV API introduced
 
[[Category:HTTP]]
Bureaucrats, editor, reviewer, Administrators
13,550

edits

Navigation menu