diff --git a/src/org/kar/archidata/dataAccess/DataFactoryTsApi.java b/src/org/kar/archidata/dataAccess/DataFactoryTsApi.java index 6b47a4b..47ac4da 100644 --- a/src/org/kar/archidata/dataAccess/DataFactoryTsApi.java +++ b/src/org/kar/archidata/dataAccess/DataFactoryTsApi.java @@ -439,6 +439,9 @@ public class DataFactoryTsApi { if (MediaType.APPLICATION_JSON.equals(elem)) { builder.append("\n\t\t\t\tcontentType: HTTPMimeType.JSON,"); break; + } else if (MediaType.MULTIPART_FORM_DATA.equals(elem)) { + builder.append("\n\t\t\t\tcontentType: HTTPMimeType.MULTIPART,"); + break; } } } diff --git a/typescript_model/rest-tools.ts b/typescript_model/rest-tools.ts index ee9de95..8497b47 100644 --- a/typescript_model/rest-tools.ts +++ b/typescript_model/rest-tools.ts @@ -20,6 +20,7 @@ export enum HTTPMimeType { IMAGE_PNG = 'image/png', JSON = 'application/json', OCTET_STREAM = 'application/octet-stream', + MULTIPART = 'multipart/form-data', } export interface RESTConfig { @@ -119,6 +120,12 @@ export function RESTRequest({ restModel, restConfig, data, params, queries }: RE let body = data; if (restModel.contentType === HTTPMimeType.JSON) { body = JSON.stringify(data); + } else if (restModel.contentType === HTTPMimeType.MULTIPART) { + const formData = new FormData(); + for (const name in data) { + formData.append(name, data[name]); + } + body = formData } console.log(`Call ${generateUrl}`) return new Promise((resolve, reject) => {