Файл Angular FileSaver поврежден. Связанные с кодированием - PullRequest
0 голосов
/ 10 ноября 2018

Я использую 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-файле. Я предполагаю, что это имеет какое-то отношение к кодированию.

Пожалуйста, помогите. см. изображение ниже:

enter image description here

...