Я использую Fiddler для отладки приложения MVC и просмотра всех HTTP-запросов.
Приложение работает на http://localhost:51234/mvc
Поскольку любой, кто пытался использовать Fiddler для сайта, размещенного на localhost, знает, что существует проблема - Windows не будет перенаправлять трафик localhost через прокси, если вы нажмете эту ссылку напрямую. Вы можете обойти это несколькими способами , например, моим предпочтительным способом использования URL http://ipv4.fiddler:51234/aboutus/contact
. Это прекрасно работает.
Проблема в том, что я начал делать AJAX, используя:
<% using (Html.BeginForm()) { %>
Если вы просматриваете сгенерированный источник, он фактически сгенерировал это:
<form
action="http://localhost:51234/aboutus/contact"
method="post"
onsubmit="Sys.Mvc.AsyncForm.handleSubmit(this, new Sys.UI.DomEvent(event), {
insertionMode:
Sys.Mvc.InsertionMode.replace,
onFailure:
Function.createDelegate(this,
submitComments_failure), onSuccess:
Function.createDelegate(this,
submitComments_success) });">
Oops!
Сгенерировано localhost
вместо ipv4.fiddler:51234
. Поэтому, конечно, когда я запускаю запрос AJAX, Fiddler не видит его.
Теоретически использование имени машины должно работать, но WebDev.WebServer не будет отвечать, если вы попытаетесь напрямую нажать имя машины http://win-538lf:51234/aboutus/contact
[Fiddler] Подключение к
win-538lf не удалось. исключение
Текст: соединение не может быть установлено
потому что целевая машина активно
отказался
fe80 :: 81fc: 8f0f: 457a: 27df% 12: 51234
Есть ли обходной путь для этого?
возможно ли настроить WebDev.WebServer для ответа на имя машины? Или мне придется создать виртуальный каталог или поддельный хост ? Я бы предпочел не делать этого, но я думаю, это не имеет большого значения.