У меня есть требование добавить конечную точку в мой API для чтения большого зашифрованного входного файла и возврата некоторых расшифрованных метаданных из файла.
Идеальным решением для меня было бы использовать конечную точку GET и использовать зашифрованный большой двоичный объект в качестве параметра запроса, но меня беспокоят ограничения длины URI в разных реализациях.
Размещение данных в качестве параметра тела кажется плохой идеей (HTTP GET с телом запроса), не в последнюю очередь потому, что я беспокоюсь, что это нанесет ущерб решениям кэширования на стороне сервера, которые не ожидают никакой информации в теле GET.
Какой правильный метод HTTP следует использовать при получении данных от клиента и их обработке для получения вывода?
ОБНОВЛЕНИЕ Мои текущие мысли заключаются в том, чтобы взять данные в теле POST и вернуть 201 с заголовком LOCATION, содержащим URL-адрес GET, который ссылается на ресурс (т. е. расшифрованные метаданные). Поскольку сам ресурс никак не сохраняется, мне придется поместить метаданные в качестве параметра запроса в GET. Но поскольку длина метаданных ограничена (ограничение приложения), это не должно быть проблемой.