2015-11-06 2 views
1

Наш API позволит пользователям скачивать файлы (10mb - 500mb).Какой метод REST использовать для загрузки

Остальная конечная точка будет

/downloads/*content-id* 

Если идентификатор контента является ссылкой на файл на нашем сервере.

Я предполагаю, что HTTP-метод должен быть GET, поскольку он пытается получить что-то. Тем не менее, поскольку я хочу, чтобы пользователи могли приостановить загрузку, чтобы возобновить ее позже, мне также необходимо передать байт-полученный параметр в конечную точку.

Должен ли я сделать это как параметр запроса?

/downloads/*content-id*?bytesReceived=123 

Нужно ли добавлять байты в тело запроса, и если да, не следует ли мне больше использовать GET?

Кроме того, в качестве второго q. Я использую тип содержимого октетного потока для загрузки файлов - так как мне сказали, что этот тип содержимого лучше всего позволит мне приостановить загрузку и возобновить ее позже. При распаковке файл будет содержать содержимое HTML5 (с js/css). Это лучший способ?

ответ

0

Вы должны использовать метод GET, так как вы получаете конкретный ресурс. Вы можете пройти bytesReceived через телосъемки с GET не имеет кузовов. Вместо этого используйте соответствующий заголовок, он называется Range, см. here.

Смежные вопросы