У меня есть приложение Angular Universal (Angular 5.2.11), размещенное в Heroku, работающее на сервере Node с Express, и я использую ограничители скорости во всех моих POST-маршрутах, проверяя ip запроса в req.header ('x-forwarded) -for ') или req.connection.remoteAddress для ограничения запросов по ip.
Проблема в том, что когда эти запросы выполняются универсальным приложением, используемый ip-адрес исходит от машины / сетевого слова, на котором размещен мой сервер. Это может привести к неправильному ограничению скорости для разных пользователей, поскольку у меня может быть 100 пользователей, запрашивающих мою домашнюю страницу одновременно, и ограничение скорости в 20 запросов в окне по 10 секунд для каждого запроса POST, присутствующего на этой странице.
Есть ли способ передать исходный ip запроса в универсальное приложение и использовать его в заголовках запросов, заставляя универсальное приложение действовать от имени исходного пользователя и предотвращая эти неправильные ограничения скорости?
Спасибо!