2012-06-01 10 views
19

Sto cercando alcuni buoni dettagli tecnici sull'argomento dei binding WCF, mi interessa sapere le seguenti cose.Diverse associazioni WCF, le loro differenze e compatibilità con altre piattaforme

  1. Elenco di attacchi WCF diversi con il suo scopo e limite speciali.
  2. Compatibilità/Interoperabilità con altre piattaforme come il consumo del servizio WCF in Java, client PHP. Quale legame è supportato e quale no.
  3. Se desidero ottenere/pubblicare dati protetti tramite l'API di servizio, quale legame devo utilizzare se l'applicazione client è in Java o Php?

Ho sfogliato materiale diverso su Internet ma non è nel dettaglio e in qualche modo disperso. In attesa di alcune buone risposte.

+0

Ho aggiunto un'altra domanda per ottenere ulteriori chiarimenti. Il fatto è che devo creare un'API di servizio attraverso la quale un diverso client può comunicare con la mia domanda per l'immissione dei dati, l'elaborazione dei dati. Rivolgi la domanda a questo scenario e fornisci una risposta. – MSUH

risposta

63

Choosing the right WCF binding

enter image description here

  1. BasicHttpBinding: la comunicazione di base servizio web. Espone i servizi WCF come servizi Web ASMX legacy. Utilizzato per l'interoperabilità. Nessuna sicurezza per impostazione predefinita.
  2. WSHttpBinding: servizi Web con supporto WS- *. Supporta le transazioni e la messaggistica affidabile.
  3. WSDualHttpBinding: servizi Web con contratto duplex e supporto transazioni.
  4. WSFederationHttpBinding: servizi Web con sicurezza federata. Supporta le transazioni.
  5. MsmqIntegrationBinding: comunicazione diretta con le applicazioni MSMQ. Supporta le transazioni.
  6. NetMsmqBinding: comunicazione tra le applicazioni WCF tramite l'accodamento. Supporta le transazioni.
  7. NetNamedPipeBinding: Comunicazione tra le applicazioni WCF sullo stesso computer. Supporta contratti e transazioni duplex.
  8. NetPeerTcpBinding: comunicazione tra computer tramite servizi peer-to-peer. Supporta contratti duplex.
  9. NetTcpBinding: Comunicazione tra applicazioni WCF su computer. Supporta contratti e transazioni duplex.
+2

+1 per aggiungere il grafico, prima che avessi coperto solo metà della domanda. –

+0

Grazie, ma ho già letto questo articolo prima di postare qui, Quello che mi interessa sono gli scenari/situazioni in cui un legame è applicabile e l'altro no, e l'altra domanda è che posso consumare tutti i servizi con Java o client php? – MSUH

+1

@JoshuaDrake - principalmente per l'altro tech lik php, jsp che funziona nel dominio web è meglio usare il protocollo BasicHttpBinding che facilmente possiamo decidere di formare il grafico ... che potrebbe rispondere a entrambe le domande ... è meglio andare a leggere su ogni protocollo perché ognuno avendo una descrizione di 1 o 1/2 pagina che non posso includere qui –

2
  • Se viene richiesto di creare un legame che è globalmente inter-operabile, utilizzare http vincolante.

  • Per uso interno, ma i clienti si trovano in server separati utilizzano il binding tcp . È meno inter-operabile, ma utilizza la codifica binaria che è più veloce.

  • Utilizzare il binding named pipe per la comunicazione all'interno del server, ovvero per i clienti ospitati negli stessi server. Il binding pipe denominato è il più veloce uno in wcf consentito binding.

Utilizzare gli attacchi in modo appropriato, rendere il progetto migliore.

4

Per aggiungere alla risposta accettata, se si desidera vincolare il proprio JSON richiesta di un oggetto in WCF, utilizzare webHttpBinding

Here's un esempio di questo.

Problemi correlati