Это озадачивало меня некоторое время.
Например, у нас есть REST API, который обеспечивает базовый контент для системы, потребляя и производя JSON. В этой конечной точке он создает URL-адрес для изображения и описания и находится следующим образом: // localhost / myApi / pictures / 1
{
id: 1,
description: "This is a pretty picture of a daisy",
URL: <OUR URL>
}
Теперь OUR_URL должен указывать на местоположение в API, например, // localhost / myApi / files / pictures / 1, которое возвращает JPG (приложение, стоящее за API, считывает физическое содержимое файла и затем передает его обратно клиенту ). Это, очевидно, отличается от остальной части API, который генерирует ответы JSON, и это будет связано с чтением и потоковой передачей реального файла.
В качестве альтернативы OUR_URL должен указывать на URL-адрес вне области действия службы REST, поэтому //localhost/files/pictures/1.jpg, где он читает файл напрямую.
Итак, вопрос:
Должен ли RESTful API возвращать файлы или просто местоположение?