16439: Fixes WebDAV request URL.
[arvados-workbench2.git] / src / common / webdav.ts
index aef97c8cf05ede7587fcce266256e22d0536d607..b2f43348a8d95105a62bc7c20ea520d59907c95d 100644 (file)
@@ -28,7 +28,7 @@ export class WebDAV {
             data
         })
 
-    upload = (url: string, path: string, files: File[], config: WebDAVRequestConfig = {}) => {
+    upload = (url: string, files: File[], config: WebDAVRequestConfig = {}) => {
         return Promise.all(
             files.map(file => this.request({
                 ...config, url,
@@ -61,7 +61,11 @@ export class WebDAV {
     private request = (config: RequestConfig) => {
         return new Promise<XMLHttpRequest>((resolve, reject) => {
             const r = this.createRequest();
-            r.open(config.method, this.defaults.baseURL + config.url);
+            this.defaults.baseURL = this.defaults.baseURL.replace(/\/+$/, '');
+            r.open(config.method,
+                `${this.defaults.baseURL
+                    ? this.defaults.baseURL+'/'
+                    : ''}${config.url}`);
             const headers = { ...this.defaults.headers, ...config.headers };
             Object
                 .keys(headers)