Создание HTTP соединения в локальной сети
При создании POST запроса к компьютеру, находящемуся в локальной сети я получаю следующую ошибку:
HTTP Error 400. The request hostname is invalid.
Код выполнения запроса:
string httpAddress = "http://192.168.1.101:8080/";
var Client = new HttpClient();
Client.BaseAddress = new Uri(httpAddress);
while (true) {
Console.Write("Send: ");
Console.WriteLine(Client.PostAsync(httpAddress,
new StringContent(Console.ReadLine(), Encoding.UTF8, "application/json")).Result.StatusCode);
}
На другой стороне соответственно:
HttpListener httpListener = new HttpListener();
httpListener.Prefixes.Add("http://localhost:8080/");
httpListener.Start();
Console.WriteLine("Wait...");
while (true) {
var context = httpListener.GetContext();
using (var ms = new System.IO.MemoryStream()) {
context.Request.InputStream.CopyTo(ms);
Console.WriteLine("Data: " + Encoding.UTF8.GetString(ms.ToArray()));
}
}
Почему я не могу указать в HTTP-адресе локальный IP-адрес?
Если запустить этот код в одной системе и указать адрес подключения как localhost:8080, всё работает исправно. Если указать 127.0.0.1:8080, возникает такая же ошибка.