WCF маршрутизация и различные конечные точки
У меня небольшая проблема, и я не знаю с чего начать.
Мне нужно сделать сервис подписки и если вернет уникальный адрес, на который потребитель будет отправлять мыла после подписки. Это работает так: вы отправляете SOAP по адресу http://foo.org/Subscribe и в ответ получаете адрес http://foo.org/SubscriptionManager/1, следующий потребитель получит http://foo.org/SubscriptionManager/2 и т. Д.
Как я могу реализовать это через WCF? Я догадался, что в WCF есть что-то вроде ASP.Net Routing, где я мог бы маршрутизировать ссылки, такие как http://foo.org/SubscriptionManager/ и получить доступ к 2 в качестве параметра, но я не нашел ничего подобного.
Я с нетерпением жду любой помощи.
1 ответ
У меня вопрос: почему вы хотите направить пользователей на разные конечные точки?
По моему мнению, сама идея возврата URI службы для вызывающего абонента не является хорошим дизайном.
Вы заставляете своих потребителей выполнять больше работы - они должны сделать дополнительный звонок и запросить ответ, чтобы выяснить, какой конечной точке они должны позвонить.
Если ваше требование заключается в распределении нагрузки между двумя службами, вы должны предложить одну конечную точку с балансировкой нагрузки, которая затем будет отправлять запросы другим конечным точкам.
В качестве альтернативы, если вам необходимо направить определенных пользователей к одной или другим службам подписки на основе некоторых правил, вы можете взглянуть на маршрутизацию WCF.