Почему netTcp имеет другой протокол? Почему BasicHttp и WS находятся в одном протоколе? Может ли кто-нибудь объяснить мне? СпасибоПочему netTcp должен иметь другой протокол?
ответ
BasicHttpBinding: Основные коммуникации веб-сервис. Предоставляет услуги WCF в качестве устаревших веб-сервисов ASMX. Используется для взаимодействия. По умолчанию нет безопасности.
WSHttpBinding: Веб-службы с поддержкой WS- *. Поддерживает транзакции и надежную передачу сообщений.
NetTcpBinding: Связь между приложениями WCF через компьютеры. Поддерживает дуплексные контракты и транзакции.
Для Больше уточнений проверьте следующие ссылки
http://www.codeproject.com/Articles/431291/WCF-Services-Choosing-the-appropriate-WCF-binding
Зависит от того, что вы понимаете под "протокол".
Попробует объяснить: в любом случае любая служба WCF работает с транспортным протоколом TCP/IP. Когда вы запускаете службу, она прослушивает IP-сокет, затем принимает входящие байты [], а затем разница в протоколе уровня приложения.
Чтобы преобразовать байты в объекты .NET, существует конвейер, который начинается с так называемого MessageEncoder. В байтах кодировщика десериализуются в объект сообщения. По умолчанию существует три типа датчиков:
- текст кодировщик, который преобразует байт [] в строку
- MTOM датчика.
МТ представляет собой механизм для передачи больших двоичных вложений в SOAP-сообщениях, как необработанные байты, позволяя для небольших сообщений
- двоичного кодер, который преобразует байты [] в объект .NET с использованием. нетто конкретных двоичный сериализатор, который не совместим с не .net систем
Так вот разница:
- Взаимодействие BasicHttp использует текстовый кодировщик. Он интерпретирует входящие байты как HTTP-запрос и преобразует поток байтов в заголовки и тело Http. Затем тело десериализуется в зависимости от конкретного типа привязки и десериализатора сообщений, который является частью поведения службы. В одном случае этот объект десериализуется как SOAP/XML (BasicHttp), в другом - как XML или JSON (webHttpBinding).
- WS bindins может использовать текстовый кодировщик, а также кодер MTOM. Во втором случае кодировщик знает, как взять из потока байтов [] текстовую часть XML/SOAP и двоичное вложение.
- netTcp binding использует двоичный кодер и десериализует байты непосредственно в объект.
Таким образом, часть протокола в адресе привязки просто отличает два основных случая «http: //» для привязок, которые являются стандартными и совместимыми с не-NET-миром, на основе текста. И «net.tcp» для чистых окон + .NET.
- 1. ArrayList абстрактных подклассов (должен иметь другой hashcode)
- 2. Почему WEKA-TestSets должен иметь атрибут класса?
- 3. Почему запрос AJAX должен иметь это?
- 4. Почему URL-адрес изображения должен иметь request.scheme?
- 5. Почему суперкласс класса должен иметь второй аргумент?
- 6. Nullable object должен иметь значение - почему?
- 7. Почему удаленный сервер git должен иметь --bare
- 8. Почему протокол может иметь @property, но не iVar?
- 9. Отладка netTcp привязки WCF
- 10. Почему WebRTC нужен протокол ICE?
- 11. Что делает протокол CustomNSError и почему я должен его принять?
- 12. Ошибка конфигурации WCF NetTcp
- 13. Транзит XMPP в другой протокол
- 14. Почему протокол websocket использует другой код ответа, чем http
- 15. Почему протокол POP3 выживает?
- 16. Оптимизация трафика WCF nettcp
- 17. «Должен иметь» дополнения Visual Studio
- 18. WCF NetTCP Binding Over Internet
- 19. WCF NetTCP с фоновой резьбой
- 20. Интерфейс не должен иметь свойств?
- 21. Какой размер должен иметь CGPDFContext?
- 22. nullable объект должен иметь значение
- 23. Можете ли вы заменить стандартный протокол кадрирования в WCF NetTcp без повторной записи всего транспортного канала?
- 24. Почему сортированный список должен иметь пару значений ключа?
- 25. Почему Spring Boot Класс приложения должен иметь аннотацию @Configuration?
- 26. Почему макет окна должен иметь атрибут ширины в CSS3?
- 27. void_t spezialization Почему основной шаблон должен иметь default = void?
- 28. Почему const-объект должен иметь предоставленный пользователем конструктор?
- 29. Почему андроид должен showAsAction = "always", чтобы иметь префикс с псевдонимом?
- 30. Почему я получаю «Метод должен иметь тип возврата»?
Это не ответ для меня ... Это не объясняет, почему ... – user3140050
Вы проверили, что ссылки – Vinoth