diff --git a/src/org/kar/archidata/filter/CORSFilter.java b/src/org/kar/archidata/filter/CORSFilter.java index 5344854..d36e094 100644 --- a/src/org/kar/archidata/filter/CORSFilter.java +++ b/src/org/kar/archidata/filter/CORSFilter.java @@ -21,6 +21,7 @@ public class CORSFilter implements ContainerResponseFilter { response.getHeaders().add("Access-Control-Allow-Headers", "Origin, content-type, Content-type, Accept, Authorization, mime-type, filename, Range"); response.getHeaders().add("Access-Control-Allow-Credentials", "true"); - response.getHeaders().add("Access-Control-Allow-Methods", "GET, POST, PUT, PATCH, DELETE, OPTIONS, HEAD"); + response.getHeaders().add("Access-Control-Allow-Methods", + "GET, POST, PUT, PATCH, DELETE, ARCHIVE, RESTORE, OPTIONS, HEAD"); } } diff --git a/src/resources/rest-tools.ts b/src/resources/rest-tools.ts index fbd143d..d269ed7 100644 --- a/src/resources/rest-tools.ts +++ b/src/resources/rest-tools.ts @@ -252,9 +252,14 @@ export function RESTRequest({ if (restModel.accept !== undefined) { headers["Accept"] = restModel.accept; } - if (restModel.requestType !== HTTPRequestModel.GET) { + if (restModel.requestType !== HTTPRequestModel.GET && + restModel.requestType !== HTTPRequestModel.ARCHIVE && + restModel.requestType !== HTTPRequestModel.RESTORE + ) { // if Get we have not a content type, the body is empty - if (restModel.contentType !== HTTPMimeType.MULTIPART) { + if (restModel.contentType !== HTTPMimeType.MULTIPART && + restModel.contentType !== undefined + ) { // special case of multi-part ==> no content type otherwise the browser does not set the ";bundary=--****" headers["Content-Type"] = restModel.contentType; }