#c #api #websocket #uwebsockets
Вопрос:
Я использую uWebSockets для выполнения проекта. Что мне нужно сделать, так это получить IP-адрес отправителя из входящих HTTP-запросов. В документации я вижу, что IP-адрес можно извлечь из веб-сайтов. У кого-нибудь есть идея отправить UWS на веб-сайты, чтобы получить данные, или есть другой способ их получить?
#include <iostream>
#include "App.h"
int main() {
/* Overly simple hello world app */
uWS::App().get("/*", [](auto *res, auto *req) {
// **this is the place i need to access the ip address of the incoming HttpRequest**
res->end("Hello world!");
}).listen(3000, [](auto *listen_socket) {
if (listen_socket) {
std::cout << "Listening on port " << 3000 << std::endl;
}
}).
run();
std::cout << "Failed to listen on port 3000" << std::endl;
}
Ссылка на библиотеку: https://unetworking.github.io/uWebSockets.js/generated/interfaces/WebSocketBehavior.html
Комментарии:
1. библиотека написана на c , и я также использую c . (Я в некотором роде новичок)
2. Пожалуйста, отредактируйте свой вопрос с помощью репрезентативного образца приложения, которое у вас есть сейчас, и укажите место, где вам нужен IP-адрес отправителя.
Ответ №1:
Согласно документации, удаленный адрес является атрибутом ответа. Следовательно:
std::string_view remote_ip = res->getRemoteAddressAsText();
Комментарии:
1. Пометка вопроса как принятого поможет другим найти эту тему в будущем.