#asp.net #web-services #rest #soap #asmx
#asp.net #веб-сервисы #rest #soap #asmx
Вопрос:
Мне просто интересно, совместимы ли файлы asmx с запросами в стиле REST?
У меня есть несколько файлов asmx, которые должны обслуживать некоторые сторонние программы, настроенные на отправку запросов REST, а не SOAP.
Ответ №1:
Прежде всего, вам не следует использовать ASMX для разработки новых сервисов: вместо этого вы должны использовать WCF. С WCF намного проще, чтобы одна и та же служба обрабатывала конечные точки в стиле SOAP и REST.
Самое близкое, что служба ASMX может получить от REST, — это то, что ее можно настроить так, чтобы разрешать запросы GET или POST, и в этом случае она вернет обычный XML без оболочки SOAP.
Смотрите Параметры конфигурации.
Но если вы пытаетесь получить «настоящий REST» от ASMX, то вам не повезло.
Комментарии:
1. Это существующий веб-сервис, а не новый. Я пытаюсь выяснить, могу ли я использовать этот, или мне нужно создать новый (wcf)
2. Проверьте ссылку «Параметры конфигурации». Возможно, вам удастся избежать проблем с использованием HttpGet или HttpPost.
3. Я не понимаю, как Get или Post будут работать очень хорошо. Мне понадобится один универсальный контроллер методов, который передает запрос другим, или что-то в этом роде. Потому что мне нужно ссылаться на фактические имена методов в запросе, а REST работает не так.
4. Я не понимаю, зачем вам нужен один контроллер или что-то еще. Вы можете использовать GET или POST непосредственно для правильного метода. REST не подразумевает определенную структуру URL, вы знаете.
5. Но если вы пытаетесь получить «настоящий REST» от ASMX, то вам не повезло. На самом деле, как вы собираетесь превратить то, что в настоящее время является сервисом в стиле RPC, в сервис, основанный на концепции ресурсов?