Snímek 1

Transkript

Snímek 1
WebDAV
Filip Jandejsek
Prezentace k předmětu X36MTI
Obsah prezentace
{
{
{
{
{
{
{
{
WebDAV
Úvod
Vlastnosti
SW podpora protokolu
Komunikace
Zámky
Kolekce
Zdroje
Závěr
2
Úvod
{
{
{
{
{
WebDAV
WebDAV =
Web Distributed Authoring and Versioning
protokol pro práci se soubory na
vzdálených serverech
standard organizace IETF (Internet
Engineering Task Force) pro vzdálenou
správu souborů
RFC 2518 z února 1999
RFC 4918 z června 2007
3
Vlastnosti
{
umožňuje vytvářet, odstraňovat,
kopírovat, přesouvat a dotazovat se na
z
z
z
z
{
poskytuje zámky zdrojů
z
z
WebDAV
vzdálené dokumenty
informace o dokumentech (autor, datum
vzniku apod.)
kolekce dokumentů
kolekce vlastností dokumentů
výlučný
sdílený
4
SW podpora protokolu
{
klienti
z
z
z
{
webové servery
z
z
z
WebDAV
zabudovaná podpora v MS Windows od verze
2000
davfs2 – WebDAV linux file systém
aplikace 3. stran (SkunkDAV, DAVmanager
apod.)
Apache
Apache Tomcat
Internet Information Server
5
Komunikace
{
HTTP – zajištění komunikace
z
z
WebDAV
využití HTTP 1.1
{ GET, POST, HEAD, OPTIONS, PUT, DELETE,
TRACE
přidává nové HTTP příkazy
{ PROPFIND
{ PROPPATCH
{ MKCOL
{ COPY
{ MOVE
{ LOCK
{ UNLOCK
6
Komunikace
{
XML – nositel informací
z
z
WebDAV
namespace xmlns:D="DAV:"
{ definice elementů spjatých s danými HTTP
příkazy
{ např. PROPPATCH
kořenový element set,
propertyupdate, remove
tvorba uživatelských namespace pro ukládání
libovolných informací
7
Komunikace – příklad – zadání
{
WebDAV
vytvoření nebo změna vlastností Autor a
Popis a smazání vlastnosti Archivni
dokumentu dokument.pdf umístěném na
serveru www.webdavserver.cz
8
Komunikace – příklad – Request
PROPPATCH /dokument.pdf HTTP/1.1
Host: www.webdavserver.cz
Content-Type: text/xml; charset="iso-8859-1"
Content-Length: xxxx
<?xml version="1.0" encoding="iso-8859-1" ?>
<D:propertyupdate xmlns:D="DAV:"
xmlns:Z="http://www.webdavserver.cz/dtd/dt
d-dok">
<D:set>
<D:prop>
<Z:Autor>Bc. Filip Jandejsek</Z:Autor>
</D:prop>
WebDAV
9
Komunikace – příklad – Request
<D:prop>
<Z:Popis>Muj dokument na WebDAV
serveru</Z:Popis>
</D:prop>
</D:set>
<D:remove>
<D:prop>
<Z:Archivni/>
</D:prop>
</D:remove>
</D:propertyupdate>
WebDAV
10
Komunikace – příklad – Response
HTTP/1.1 207 Multi-Status
Content-Type: text/xml; charset="utf-8"
Content-Length: xxxx
<?xml version="1.0" encoding="utf-8" ?>
<D:multistatus xmlns:D="DAV:"
xmlns:Z="http://www.webdavserver.cz/dtd/dtddok">
<D:response>
<D:href>http://www.webdavserver.cz/dokument.pdf
</D:href>
<D:propstat>
<D:prop><Z:Autor/></D:prop>
<D:status>HTTP/1.1 200 OK</D:status>
</D:propstat>
WebDAV
11
Komunikace – příklad – Response
<D:propstat>
<D:prop>
<Z:Popis/>
</D:prop>
<D:status>HTTP/1.1 200 OK</D:status>
</D:propstat>
<D:propstat>
<D:prop><Z:Archivni/></D:prop>
<D:status>HTTP/1.1 200 OK</D:status>
</D:propstat>
</D:response>
</D:multistatus>
WebDAV
12
Zámky – Locks
{
2 úrovně podpory
z
z
z
z
{
{
pro podporu kolektivní práce
uzamknutí zápisu (write-locks)
z
z
{
{
WebDAV
jednoduchá – bez zámků
úplná
DAV:supportedlock vlastnost
HTTP příkaz OPTIONS
výlučný (Exclusive)
sdílený (Shared)
Lock Token – klíč
Timeout zámku
13
Zámky – příklad
Request
DELETE /locked/dokumenty HTTP/1.1
Host: www.webdavserver.cz
{ Response
HTTP/1.1 423 Locked
Content-Type: application/xml; charset="utf-8"
Content-Length: xxxx
{
<?xml version="1.0" encoding="utf-8" ?>
<D:error xmlns:D="DAV:">
<D:lock-token-submitted>
<D:href>/locked/</D:href>
</D:lock-token-submitted>
</D:error>
WebDAV
14
Kolekce
{
{
{
{
obdoba adresářů
linky – soubory ze stejné kolekce nemusí
být na stejném místě nebo serveru
MKCOL – vytvoření kolekce
COPY – kopie souboru / kolekce
z
{
{
WebDAV
hlavičky Depth (0/1/Infinity), Overwrite (T/F),
Destination (URI)
MOVE – přesun souboru / kolekce, jako
COPY
DELETE – smazání kolekce
15
Kolekce – příklad I
{
Vytvoření nové kolekce
z
Request
MKCOL /novy_adr/ HTTP/1.1
Host: www.webdavserver.cz
z
Response
HTTP/1.1 201 Created
{
Kopie souboru
z
Request
COPY /dokument.pdf HTTP/1.1
Host: www.webdavserver.cz
Destination:
http://www.webdavserver.cz/novy_adr/dokument.pdf
Depth: infinity
z
Response
HTTP/1.1 204 No Content
WebDAV
16
Kolekce – příklad II
{
Přesunutí souboru
z
Request
MOVE /dokument.pdf HTTP/1.1
Host: www.webdavserver.cz
Destination:
http://www.webdavserver.cz/smlouvy/dokument.pdf
z
Response
HTTP/1.1 201 Created
Location:
http://www.webdavserver.cz/smlouvy/dokument.pdf
{
Smazání souboru
z
Request
DELETE /novy_adr/dokument.pdf HTTP/1.1
Host: www.webdavserver.cz
z
Response
HTTP/1.1 204 No Content
WebDAV
17
Zdroje
{
{
{
{
{
{
WebDAV
www.webdav.org
interval.cz (interval.cz/clanky/zaklinadlojmenem-webdav)
RFC 2518 (tools.ietf.org/html/rfc2518)
RFC 4918 (tools.ietf.org/html/rfc4918)
RFC 2616 (tools.ietf.org/html/rfc2616)
en.wikipedia.org/wiki/WebDAV
18
Závěr
{
WebDAV
Děkuji vám za pozornost
19

Podobné dokumenty

URL - Europen

URL - Europen v jazyku Python; takové rozšíření se automaticky používá pro výpis hodnot standardních tříd jazyka C++ (např string, list). „Automatic Bug Reporting Tool sbírá informace o pádech aplikací a umožňu...

Více

html - Hlavní stránka

html - Hlavní stránka – TLS (Transport Layer Security) » vývoj z SSL 3.0

Více

BitTorrent

BitTorrent dictionaries: de

Více

prezentace - DSN - České vysoké učení technické v Praze

prezentace - DSN - České vysoké učení technické v Praze České vysoké učení technické v Praze Fakulta elektrotechnická

Více

Bojujeme s RESTem

Bojujeme s RESTem http://dev.anyframejava.org/docs.en/anyframe/plugin/springrest/1.0.2/reference/htmlsingle/springrest.html

Více

RSYNC protokol, nástroj

RSYNC protokol, nástroj velké množství adresářů a souborů o malé velikosti, minimální změny

Více

Semestrální práce z předmětu X36MTI na téma: Libor Bánovský

Semestrální práce z předmětu X36MTI na téma: Libor Bánovský Tato práce by měla poskytnout ucelený pohled na technologii BitTorrentu. Obsahuje jak základní informace, které pomohou zorientovat se čtenáři, který o BitTorrentu nikdy neslyšel, tak informace pok...

Více

PhpMyAdmin

PhpMyAdmin Soubor, pomocí kterého vložíme data ze souboru vlozeni.php Více

Digitální tisk

Digitální tisk nemohli mít také takové pěkné barevné, jednotně vypadající tiskoviny a zhrozili jste se cen, když potřebujete jen desítky nebo stovky kusů? Jestli ne, tak to zkuste. Samozřejmě můžete počkat, až Va...

Více

Začínáme s optimalizací pro vyhledávače

Začínáme s optimalizací pro vyhledávače pro návštěvníky stránek. Jsou hlavními konzumenty vašeho obsahu a vyhledávače používají k nalezení vaší práce. Pokud se soustředíte výhradně na konkrétní vylepšení, která umožňují dosáhnout lepšího...

Více