Мне нужно сделать стол доступным для избранных. Таблица хранится в формате JSON на моем сервере Ubuntu и обновляется ежечасно с помощью сценария R, запланированного через Cron. Я использую веб-сервер Nginx.
Как я понимаю, одним из решений является создание RESTful API. Однако, учитывая, что файл JSON поддерживается и полностью обслуживается сценарием R, я не вижу, что, например, Настройка API Flask / Gunicorn необходима помимо предоставления структуры JSON тому, кто запрашивает API с помощью GET?
Учитывая, что файлы JSON могут обслуживаться запросами http (s), я подумал, что альтернативой будет ввести путь к файлу JSON в качестве размещения в моей конфигурации Nginx и выборочно разрешить IP-адресам моих партнеров доступ к подпрограмме. -место нахождения? Следовательно, server.com / API указывает на внутренний каталог / API / table.JSON в nginx.
Я полностью понимаю, что эта «синтетическая» настройка GET API не позволяет передавать токены авторизации в запрос GET (так как никакие параметры не передаются в http-ссылку), но, возможно, я упускаю что-то еще, что является неоптимальным моей структуры? Например, отличается ли загрузка и обработка запросов при использовании этого статического подхода?
Если это очевидно, я довольно новичок в вопросах архитектуры данных.
location /API/ {
deny all;
allow xx.xxx.xxx.xx
proxy_pass http://localhost:3838/API/table.JSON;
proxy_redirect http://localhost:3838/API/table.JSON $scheme://$host/;
}
Конечно, эта установка работает в том смысле, что server.com/API/ полностью GET'able. Я просто спрашиваю, есть ли у подхода недостатки, о которых я должен знать.