Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Ukázka SoapAndHttpEndpoints ukazuje, jak implementovat službu založenou na RPC a zveřejnit ji ve formátu SOAP a ve formátu POX (Plain Old XML) pomocí webového programovacího modelu WCF. Další podrobnosti o HTTP vazbě pro službu najdete v ukázce Basic HTTP Service. Tato ukázka se zaměřuje na podrobnosti, které se týkají vystavení stejné služby přes PROTOKOL SOAP a HTTP pomocí různých vazeb.
Demonstruje
Zveřejnění služby RPC přes PROTOKOL SOAP a HTTP pomocí WCF.
Diskuse
Tato ukázka se skládá ze dvou komponent: projektu webové aplikace (služba), který obsahuje službu WCF a konzolovou aplikaci (klient), která volá operace služby pomocí vazeb SOAP a HTTP.
Služba WCF zveřejňuje 2 operace –GetData a PutData –, které vrací řetězec předaný jako vstup. Operace služby jsou opatřeny poznámkami WebGetAttribute a WebInvokeAttribute. Tyto atributy řídí projekci HTTP těchto operací. Kromě toho jsou opatřeny poznámkami OperationContractAttribute, které umožňují jejich zveřejnění prostřednictvím vazeb SOAP. Metoda služby PutData vyvolá chybu WebFaultException, která se odešle zpět přes HTTP pomocí stavového kódu HTTP a odešle zpět přes SOAP jako SOAP Fault.
Soubor Web.config nakonfiguruje službu WCF se 3 koncovými body:
Koncový bod ~/service.svc/mex, který zveřejňuje metadata služby pro přístup klientů založených na protokolu SOAP.
Koncový bod ~/service.svc/http, který klientům umožňuje přístup ke službě pomocí vazby HTTP.
Koncový bod ~/service.svc/soap, který klientům umožňuje přístup ke službě pomocí protokolu SOAP přes vazbu HTTP.
Koncový bod HTTP je nakonfigurovaný se standardním <webHttp> koncovým bodem, který je helpEnabled nastavený na true. V důsledku toho služba zveřejňuje stránku nápovědy založenou na XHTML na adrese ~/service.svc/http/help, kterou mohou klienti založené na protokolu HTTP použít pro přístup ke službě.
Projekt klienta ukazuje přístup ke službě pomocí proxy protokolu SOAP (vygenerovaného prostřednictvím odkazu přidat službu) a přístup ke službě pomocí WebClient.
Ukázka se skládá ze služby hostované na webu a konzolové aplikace. Při spuštění konzolové aplikace klient odešle žádosti do služby a zapíše příslušné informace z odpovědí do okna konzoly.
Chcete-li spustit ukázku
Otevřete řešení pro ukázku koncových bodů SOAP a HTTP.
Stiskněte Ctrl+Shift+B pro sestavení řešení.
Pokud ještě není otevřený, otevřete stisknutím kombinace kláves CTRL+W, S okno Průzkumník řešení.
V okně Průzkumník řešení klikněte pravým tlačítkem na projekt Služba a umístěte kurzor na položku Ladění, aby se zobrazila možnost Spustit novou instanci. Klepněte na tlačítko Spustit novou instanci. Tím se spustí vývojový server ASP.NET, který je hostitelem služby.
V oknech Průzkumníka řešení klikněte pravým tlačítkem myši na projekt klienta a kurzor umístěte na Ladění, a zobrazí se nabídka Spustit novou instanci. Klepněte na tlačítko Spustit novou instanci.
Okno konzoly klienta se zobrazí a poskytne URI spuštěné služby a URI HTML stránky nápovědy pro tuto službu. Kdykoli můžete zobrazit stránku nápovědy HTML zadáním identifikátoru URI stránky nápovědy v prohlížeči.
Při spuštění ukázky zapíše klient stav aktuální aktivity.
Stisknutím libovolné klávesy ukončete konzolovou aplikaci klienta.
Stisknutím kombinace kláves SHIFT+F5 zastavíte ladění služby.
V oznamovací oblasti systému Windows klikněte pravým tlačítkem na ikonu ASP.NET vývojového serveru a v místní nabídce vyberte Zastavit .