Шаблон REST API для приложения генерации отчетов

Я пытаюсь создать свой первый REST API для генерации и получения отчетов. Приложение должно иметь возможность возвращать отчет в виде файла для загрузки или в виде коллекции. В случае загрузки, по некоторым техническим причинам, я бы предпочел указать место загрузки файла, а не передавать файл внутри тела. Наконец, я хотел бы отслеживать состояние всех запросов на генерацию отчетов (т. Е. Выполнено, ошибка и т. Д.).

Поскольку создание отчета может занять некоторое время, я подумал применить шаблон, найденный в книге отдыха, а также на этом сайте:

1) POST uri: отчеты возвращаются:

HTTP 202 Расположение: uri: reportRequest

2) ПОЛУЧИТЬ URI:ReportRequest возвращает:

  • Если операция запущена: HTTP 200 OK
    и отчет о проделанной работе.

  • Если операция завершена: HTTP 303
    Местоположение: uri: Сообщить

Uri:Report может быть местом загрузки файла или представлением отчета (т.е. в формате Json или XML).

3) ПОЛУЧИТЬ Uri: Доклад:
HTTP 200 ОК

Здесь я не очень ясно, является ли это лучшим шаблоном для применения из-за связи между ресурсом Report и ресурсом ReportRequest. Например, если отчет удаляется из приложения по истечении заданного времени, будет ли соответствовать следующее:

ПОЛУЧИТЬ Uri:ReportRequest

HTTP 200 ОК
Просто статус сгенерированного отчета

Или приложение должно также удалить соответствующий ReportRequest?

Будучи первым REST API, который я пытаюсь создать, я хотел бы знать, возможно, есть более разумный шаблон?

0 ответов

Другие вопросы по тегам