Please read this for a high-level introduction.
Examples for using draw.io with WebDav.
These files must be hosted on a WebDav server for roundtrip-editing. Eg. Apache requires the following configuration:
DavLockDB /tmp/DavLock
<Directory "/Library/WebServer/Documents/Webdav">
Options Indexes
DAV On
AuthType Basic
AuthName "Webdav"
AuthUserFile /etc/apache2/webdav.password
Header set Access-Control-Allow-Origin http://www.example.com
Header set Access-Control-Allow-Credentials true
Header set Access-Control-Allow-Methods "POST, GET, PUT, DELETE, OPTIONS"
Header set Cache-Control "no-cache, no-store, must-revalidate"
Require valid-user
</Directory>