Я использую Angular HttpClient. Загрузите zip-файл с сервера.
Угловой код:
httpHeaders = ({
'Content-Type': 'application/json',
'tonic_id': this.getTonicToken()
});
observe: 'response',
headers: httpHeaders,
params: httpParams,
responseType: 'arraybuffer',
withCredentials: true
Чтобы сохранить ZIP-файл:
saveAs(new Blob([fileData], {type: "application/zip"}), "test.zip");
Код сервера написан в ближайшем будущем:
(defresource download
[db userid target]
resource/base-resource
:allowed-methods [:get]
:available-media-type ["application/zip"]
:handle-ok (fn [_]
(try
(ring-response {:status 200
:headers {"Content-Type" "application/zip"}
:body (io/file
(:csv-dir (config/app-config))
(export-db/file-name-from-uuid
(:connection db)
userid (first (str/split target #"\."))))})
(catch Throwable t (error t) (throw t))))
:exists? (file-exists? db userid (first (str/split target #"\."))))
Я могу загрузить zip-файл, но не могу его распаковать. Сравнивая zip-файл на сервере с созданным, я заметил много квадратов в новом zip-файле. Я предполагаю, что это имеет какое-то отношение к кодированию.
Пожалуйста, помогите. см. изображение ниже: