Различные привязки WCF, их различия и совместимость с другими платформами


Я ищу некоторые хорошие технические подробности по теме привязок WCF, мне интересно узнать следующие вещи.

  1. Список различных привязок WCF с их особым назначением и ограничениями.
  2. Совместимость/Совместимость с другими платформами, такими как использование службы WCF в Java, PHP-клиенте. Какая привязка поддерживается, а какая нет.
  3. Если я хочу получать/публиковать защищенные данные через API службы, какую привязку мне следует использовать, если клиентское приложение находится на Java или Php?

Я просматривал различные материалы в Интернете, но они не являются подробными и несколько разрозненными. Жду хороших ответов.

Author: Pranay Rana, 2012-06-01

3 answers

Выбор правильной привязки WCF

enter image description here

  1. Базовая привязка HttpBinding: Базовая связь с веб-службой. Предоставляет службы WCF в качестве устаревших веб-служб ASMX. Используется для обеспечения совместимости. По умолчанию безопасность отсутствует.
  2. Привязка wsHttpBinding: Веб-службы с поддержкой WS-*. Поддерживает транзакции и надежный обмен сообщениями.
  3. WSDualHttpBinding: Веб-службы с поддержкой дуплексных контрактов и транзакций.
  4. wsfederationhttpbinding: Веб-службы с федеративной безопасностью. Поддерживает транзакции.
  5. Привязка MSMQ к интеграции: Связь напрямую с приложениями MSMQ. Поддерживает транзакции.
  6. Привязка NETMSMQ: Связь между приложениями WCF с помощью очереди. Поддерживает транзакции.
  7. Привязка к сетевому имени: Связь между приложениями WCF на одном компьютере. Поддерживает дуплексные контракты и транзакции.
  8. Привязка NetPeerTcpBinding: Связь между компьютерами через одноранговые службы. Поддерживает дуплексные контракты.
  9. Привязка NetTcpBinding: Связь между приложениями WCF на разных компьютерах. Поддерживает дуплексные контракты и транзакции.
 63
Author: Pranay Rana, 2012-06-01 12:09:03

Чтобы добавить к принятому ответу, если вы хотите привязать свой запрос JSON к объекту в WCF, используйте Привязку webHttpBinding

Вот пример этого.

 4
Author: Mukus, 2014-05-27 02:34:39
  • Если вам необходимо создать привязку, которая является глобально совместимой, используйте привязку http.

  • Для внутреннего использования, но потребители на отдельных серверах используют привязку tcp . Он менее совместим, но использует двоичное кодирование, которое работает быстрее.

  • Используйте привязку named pipe для внутрисерверной связи, то есть для потребителей, размещенных на тех же серверах. Привязка именованного канала - самая быстрая из разрешенных привязок wcf.

Использовать привязки соответственно, сделайте свой проект лучшим.

 2
Author: , 2013-03-12 04:30:54