我有我需要在Azure服務總線上託管Web服務(WCF)並將其暴露給跨平臺客戶端(.NET或Java或任何其他)使用的場景。什麼不同的協議可以滿足這種情況?我正在考慮使用預定義的xsd或REST或SOAP甚至JSON數據包的純XML格式。我正在考慮一個basicHttpRelayBinding來揭露合約。請指教。可供跨平臺客戶端使用的WCF
0
A
回答
0
REST爲您提供最佳的可移植性,因爲這些URL非常直觀易於調試,並且很容易在任何平臺上創建此類接口。 JSON基本上是此路由的一個可選擴展,以統一的方式處理更復雜的類型;當然,當接口設計得儘可能簡單時,REST客戶端工作得最好,帶有或不帶有JSON。
假設您使用HTTP綁定而不是TCP綁定,那麼SOAP是與Java接口的優雅可能性。但是,您可能會遇到SOAP工具包不可用或不可靠的平臺,並且SOAP的所有優點都將開始對您不利。
1
公開一個SOAP服務應該適用於絕大多數平臺和語言。
1
既然你想要的服務,由許多不同的客戶端使用,我會避免使用基於SOAP綁定像basicHttpRelayBinding,去一個webHttpRelayBinding代替
http://msdn.microsoft.com/en-us/library/microsoft.servicebus.webhttprelaybinding.aspx
這將使它更容易爲像PHP框架,瀏覽器或移動設備來使用您的服務。
此外,如果您要定位移動客戶端,那麼絕對要考慮JSON而不是XML。它可以顯着減少您的消息有效負載大小 - 對於人們可能使用每字節付費數據計劃的移動客戶端非常重要。
JSON對於JavaScript(瀏覽器)客戶端顯然也會更好。
相關問題
- 1. MongoDB GUI客戶端(跨平臺或Linux)
- 2. WCF客戶端和非WCF客戶端
- 3. 使用WCF客戶端
- 4. WCF - 跨平臺問題
- 5. 跨平臺WCF服務
- 6. 爲跨平臺移動客戶端編寫MMO服務器
- 7. 如何爲非Windows平臺實現WCF測試客戶端。
- 8. 基於VisualStudio的富客戶端平臺
- 9. 如何實際使用Azure移動服務(跨平臺客戶端)?
- 10. 溫莎WCF多客戶端客戶端
- 11. 使用WCF OData客戶端的RequestEntityTooLarge
- 12. WCF客戶端使用的WS-Security
- 13. WCF:使用客戶端時的SecurityNegotiationException
- 14. WCF客戶端使用的語法MessageContract
- 15. 當客戶端可以使用Javascript時客戶端WCF服務的安全性客戶端
- 16. WCF與非WCF客戶端
- 17. WCF客戶端使用的WCF服務以及WCF客戶端使用的Java服務
- 18. WCF客戶端的可選枚舉
- 19. 使用WCF客戶端消費非WCF服務並傳遞客戶端證書
- 20. 從Realm移動平臺上的客戶端創建用戶
- 21. SAP:是否有跨平臺的基於HTML網頁的客戶端?
- 22. 客戶端代碼使用WCF
- 23. 重複使用WCF服務客戶端
- 24. WCF客戶端使用PHP web服務
- 25. 由WPF客戶端使用WCF服務
- 26. 使用平臺客戶端發送原始XML?
- 27. 將WCF服務公開給asmx客戶端和WCF客戶端
- 28. WCF錯誤未提供客戶端證書。指定ClientCredentials客戶端證書
- 29. 如何使用WCF測試客戶端測試WCF端點
- 30. 用於ASP .NET客戶端的WCF客戶端代理