Я не уверен, что это ошибка или функция, о которой вы говорите, но у меня есть несколько идей, которые вы можете попробовать.
Возможно, самый простой способ обойти это - использовать http://readme.localtest.me/- Таким образом, вы можете использовать http://localtest.me:80
, которая является общедоступной DNS-записью, указывающей на 127.0.0.1. - Это хорошо для тестирования, но в этом случае довольно умный обходной путь.
Но, как вы упомянули, нужнобыть зашифрованным, так что, исходя из идеи выше, вы можете сделать это на одном из ваших собственных доменов.Получите для него сертификат, например, бесплатный Позволяет зашифровать , просто укажите его на 127.0.0.1 и используйте его на своих устройствах.
Допустим, у вас есть домен с именем a.pl
, перейдите и создайте поддомен local.a.pl
и установите для записи A в этом поддомене значение 127.0.0.1
(Обычно это сервер с веб-приложением, но вв этом случае мы хотим использовать его для обхода) Использование позволяет шифровать, чтобы поместить туда сертификат, чтобы вы могли использовать HTTPS, или, возможно, самоподписанный тоже подойдет, я не знаю.
Тогда в вашем кодевы делаете это
httpListener.Prefixes.Add("https://local.a.pl:" + anyfreeportonyourpc + "/");
Да, вам сначала потребуется подключение к Интернету, чтобы приложение могло найти запись DNS и кэшировать ее на мобильном устройстве.Установка максимального значения TTL поможет сохранить его в кеше, когда нет интернета.Поэтому после его разрешения вы можете использовать этот домен для каждого отдельного подключения к локальному устройству, которое вам нужно.Для кеширования записи DNS требуется всего 2 секунды интернета.
Другой способ как-то добавить поиск хостов ... Не знаю, как, но простая локальная запись A для myapp.local
, указывающая на 127 в файле hosts.Это будет только поиск на частном уровне для ваших обходных целей, но добавление этой записи на мобильных устройствах может быть непростым делом из-за чрезмерного злоупотребления в прошлом.
Это также звучит так, будто привязка графического сервера установлена только наимя хоста localhost
... проверьте, можете ли вы изменить это или изменить его на IP-адрес.Это решит основную причину вашей проблемы.Я знаю, что эти вещи иногда имеют глупые привязки.