Что хорошего в ASMX Services - PullRequest
       26

Что хорошего в ASMX Services

0 голосов
/ 13 октября 2009

Я работаю с веб-сервисами уже более 2 лет. Мне есть, что сказать о таких сервисах, как Soap 1.2, WSDL, о том, как происходит связь, и о 100 других вещах.

Я видел людей, рассказывающих об их обширном опыте ASMX и опыте веб-сервисов. Но когда дело доходит до реализации, я не нахожу ничего, кроме добавления веб-ссылки и вызова нескольких методов из C #. Все, о чем мы говорим (сериализация, десериализация, мыло, бла-бла), внутренне заботится Microsoft.

Итак, я хочу знать, все ли это, что нам нужно делать при работе с WebServices, или есть что-то еще?

Перефразируя: я не знаю, что должен знать эксперт ASMX об этих сервисах.

Буду признателен, если вы предоставите несколько хороших ссылок, материалов или комментариев по этому поводу.

Ответы [ 3 ]

3 голосов
/ 13 октября 2009

Я думаю, что вы подходите к этому с точки зрения разработчика / инструментов; да, Visual Studio выполняет большую часть тяжелой работы, чтобы заставить разработчика почувствовать, что вызов веб-служб аналогичен вызову любого метода, но разработчики, которые используют инструменты вслепую, не зная, какой код генерируется и как все это работает, как вы предлагаете, а не эксперты.

Чтобы сказать, что вы являетесь экспертом, я думаю, вам нужно было бы говорить о таких вещах, как:

  • Плюсы и минусы использования сервисов в вашей архитектуре (вопросы производительности, проблемы с версиями, синхронность и асинхронность и т. Д.)
  • Причины, по которым вы хотите использовать ASMX против WCF
  • Внутренняя реализация протокола SOAP, способы использования заголовков SOAP для обеспечения безопасности и т. Д.
  • Знание "внутренних компонентов", чтобы вы могли потенциально предоставлять услуги для использования клиентами, не являющимися Microsoft (java и т. Д.)
  • Особенности WSE, включая различные версии
  • Проблемы безопасности - как защитить доступ к услуге и как защитить данные, передаваемые туда и обратно
1 голос
/ 14 октября 2009

Если вы хотите считать себя экспертом в ASMX, то вам нужно понять класс SoapExtension и связанный с ним SoapExtensionAttribute. Я не чувствую, что нужно понимать SoapExtensionImporter и SoapExtensionReflector.

Вам также следует понимать сериализацию XML, поскольку именно она используется для сериализации и десериализации между объектами и SOAP в службе ASMX.

Вы также должны понимать, что Microsoft теперь считает веб-сервисы ASMX «устаревшей технологией» (ссылка по запросу).

0 голосов
/ 13 октября 2009

Я бы сказал, что знание основ ASMX и / WCF не делает вас экспертом с точки зрения веб-сервиса.

Это правда, что обо всем слесарном деле заботятся, но вы, как правило, должны вернуться к нему в тот или иной момент. Всегда очень легко подключить asmx к asmx, wcf к wcf, axis2 к axis2 ... Но как только вы начинаете связывать их вместе, проблемы начинают проявляться. Вы когда-нибудь работали над проектом, использующим веб-сервисы, где в какой-то момент у вас были проблемы с сгенерированным WSDL или сгенерированным прокси?

Я бы сказал, что для того, чтобы заявить, что он является экспертом asmx, он не должен выглядеть удивленным, если вы начнете говорить о мыле 1.1 и 1.2, базовом профиле WS, WS- * и всех тех вещах, которые, как представляется, будут абстрагироваться от первый взгляд, но к которому вам придется вернуться в какой-то момент.

...