Spring boot rest api одиночный доступ - PullRequest
0 голосов
/ 14 мая 2018

Я пытаюсь сделать что-то довольно простое теоретически, но программно немного сложнее.

У меня есть остальные api, возвращающие некоторые статьи, и я хочу посчитать количество просмотров по ним, но я хочу иметь один доступ к конечной точке увеличения для каждого пользователя. Это означает, что если пользователь откроет статью один раз, я увеличу количество просмотров, но затем, если он откроет ее снова в тот же день, я не хочу этого делать.

Я также не хочу создавать новую таблицу в БД для сохранения просмотров на пользователя, я думаю, что это излишество. Я хочу сделать это на уровне Spring.

Ofc каждая конечная точка защищена токеном, чтобы знать пользователя.

Спасибо

Ответы [ 2 ]

0 голосов
/ 14 мая 2018

Самое простое решение может заключаться в создании набора с ключом (токен пользователя + articleId + дата открытия) и некоторой логике на уровне обслуживания (или рекомендации / перехватчика) для увеличения базы счетчиков на данных в наборе.

Другая идея может заключаться в том, чтобы установить cookie для ответа с максимальным возрастом (сроком действия) и на основе счетчика приращения доступности файлов cookie.

0 голосов
/ 14 мая 2018

Вы можете использовать тот же сервис.

  1. Подключите его к базе данных / таблице, где у вас есть PostId и счетчик;

  2. Для каждого предоставленного ответа или аннотации @After сделайте ++ / save;

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...