Веб-служба ASP.NET возвращает неверный запрос в Windows Azure

После нового перезапуска Windows 7 я открываю Visual Studio 2010 от имени администратора, создаю новый проект Windows Azure Project с веб-ролью ASP.NET, затем в проекте WebRole1 добавляю WebService1.asmx и нажимаю F5 (выполнить).

Службы Windows Azure запускаются нормально, и браузер отлично открывает http:/127.0.0.1:8080/WebService1.asmx. Но когда я нажимаю кнопку Invoke, чтобы проверить метод веб-службы, я всегда получаю сообщение Bad Request — Invalid Hostname с http:/127.0.0.1:8081/WebService1.asmx. /Привет мир.


person thiagold    schedule 29.05.2012    source источник
comment
Когда вы запускаете веб-службы в локальной среде, прокси-сервер представляет собой одну большую проблему, обязательно отключите эту проблему, а затем попробуйте, если это сработает. Я был укушен несколько раз из-за проблем с прокси. Кроме того, службы ASMX не тестируются в Azure, поэтому, если вы можете использовать WCF, это лучшее решение.   -  person AvkashChauhan    schedule 30.05.2012


Ответы (1)


Наиболее вероятной причиной является то, что WSDL-файл ASMX не поддерживается средой с балансировкой нагрузки, такой как Windows Azure. Функция тестирования зависит от WSDL. Вы увидите аналогичные проблемы, если добавите ссылку на веб-сайт или службу. Рекомендуется перейти на WCF. В WCF для устранения проблемы можно использовать useRequestHeadersForMetadataAddress (http://msdn.microsoft.com/en-us/library/ee816894.aspx). Если вам нужно использовать ASMX, попробуйте вручную указать правильный файл WSDL.

person Ming Xu - MSFT    schedule 31.05.2012