Angular Universal использует IP-адрес моего сервера в запросах POST - PullRequest
0 голосов
/ 07 ноября 2018

У меня есть приложение 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 запроса в универсальное приложение и использовать его в заголовках запросов, заставляя универсальное приложение действовать от имени исходного пользователя и предотвращая эти неправильные ограничения скорости?

Спасибо!

1 Ответ

0 голосов
/ 07 ноября 2018

номер

Angular Universal - это библиотека для выполнения рендеринга на стороне сервера.

Код работает на вашем сервере, а не в браузере.

Вы не можете отправить запрос со своего компьютера и сделать так, чтобы он казался поступающим из браузера какого-то пользователя. Сервер попытается ответить не в том месте.

...