Как реализовать пакетную загрузку файлов Huawei с использованием Java - PullRequest
0 голосов
/ 30 января 2020

Мне нужно реализовать конвейер развертывания, и в конце конвейера мы загружаем файл, в данном случае, в магазин приложений Huawei. Но для файла размером более 5 мегабайт мы должны использовать chunked API. Я не знаком с тем, как работают фрагментированные загрузки. Может кто-нибудь дать мне руководство по реализации, желательно в java о том, как реализовать такой механизм? Параметры API следующие:

enter image description here

Редактировать: В ответ на комментарий ниже, позвольте мне уточнить мой вопрос. Ища несколько ссылок о том, как выполнить запрос по частям, библиотеки, такие как httpclient и okhttp, просто установили флаг куска в значение true и, казалось, скрывали детали от клиента библиотеки:

https://www.java-tips.org/other-api-tips-100035/147-httpclient/1359-how-to-use-unbuffered-chunk-encoded-post-request.html

Тем не менее, входные параметры API, по-видимому, предполагают, что я управляю чаном вручную, так как он ожидает ChunkSize и порядковый номер. Я думаю, что мне может понадобиться использовать простой java http интерфейс для работы с API, но я не смог найти хорошего источника для начала. Если найдется кто-нибудь, кто мог бы дать мне ссылку или руководство по внедрению, это определенно поможет.

Дополнительные обновления: я пытался вручную разбить файл на несколько частей, каждая размером 1 мегабайт. Тогда я подумал, что могу попробовать вызвать API для каждого чанка, используя multipart / form-data. Но серверная сторона всегда закрывает соединение, прежде чем запись даже начинается, вызывая: Сброс соединения по пиру: ошибка записи сокета.

Это не должно быть проблемой с прокси, так как я настроил это, и я мог получить токен, URL и код авторизации без проблем.

...