Я создаю сложный SPA, используя Polymer для репликации приложения Access. Я хочу использовать http2, чтобы избежать кошмара обслуживания при слиянии исходных файлов для получения соответствующей производительности.
Я соорудил себе запуск приложения, вход через базу данных sql server. и теперь я начинаю отлаживать вещи.
Я пытаюсь получить адрес клиента, используя ответы, которые я нашел здесь.
var ip = req.headers['x-forwarded-for'] ||
req.connection.remoteAddress ||
req.socket.remoteAddress ||
req.connection.socket.remoteAddress;
но, к сожалению, в этот момент сервер падает. Копаясь с отладчиком (данный req является объектом запроса), нет ни заголовка x-forwarded-for, ни объекта соединения (кроме внутреннего сокета), и это то, что убивает этот оператор, поскольку не может получить доступ к удаленному адресу undefined. Но я не могу найти поле удаленного адреса ни в одном объекте, полученном из req.
Я использую https://github.com/molnarg/node-http2, который выглядит только реализация вокруг. В документации упоминается библиотека endpoint.js, но ссылки не работают, поэтому я понятия не имею, как получить доступ к объекту конечной точки.
Чтобы получить правильные сертификаты, я использую сертификаты с сайта pastrial.hartley-consultants.com и изменил свой домашний DNS-сервер, чтобы дать мне мою машину для разработки в качестве ее IP-адреса. Я получаю доступ к нему через браузер на той же машине. Таким образом, клиентская и серверная машины должны иметь IP-адреса 192.168.0.xx, которые просто совпадают.
Итак, вопрос в том, где IP-адрес клиента открыт для сервера (или действительно он находится в http2)