Переучивает C ++ и довольно плохо знаком с сокетами. У меня есть приложение Python, которое правильно подключается, и приложение .NET, которое работает.
URL мне нужно позвонить domain.com:8080/signalr
, Я следую за тем, что кажется стандартный пример, например.:
if ((rv = getaddrinfo("www.domain.com", PORT, &hints, &servinfo)) != 0) {
…но независимо от того, что я пытаюсь, я получаю имя или услуга неизвестна.
domain.com/signalr:8080
не будет работать.Это работает на Raspbian (Debian), если это имеет значение.
Любые предложения будут ценны.
Какие getaddrinfo()
делает это разрешение имени. Он не реализует протокол HTTP. Кроме того, он не знает, как анализировать URL, вы должны сделать это самостоятельно.
Правильный вызов будет что-то вроде:
getaddrinfo("www.Domain.com", "8080", ...);
И это вернет право struct sockaddr*
звонить connect()
и делать все вещи сокетов.
Если вам нужна функция, которая выполняет весь HTTP-протокол, вам понадобится библиотека более высокого уровня. рекомендую libcurl
.