Temel HTTP Hizmeti
TemelHttpService örneği, Windows Communication Foundation (WCF) REST Programlama modelini kullanarak HTTP tabanlı, RPC tabanlı bir hizmetin (popüler olarak "POX" (Düz Eski XML) hizmeti olarak adlandırılır) nasıl uygulanduğunu gösterir. Bu örnek iki bileşenden oluşur: şirket içinde barındırılan WCF HTTP hizmeti (Service.cs) ve hizmeti oluşturan ve ona çağrı yapan bir konsol uygulaması (Program.cs).
Örnek Ayrıntılar
WCF hizmeti, EchoWithGet
giriş olarak geçirilen dizeyi döndüren ve EchoWithPost
2 işlemi kullanıma sunar.
İşlemin EchoWithGet
HTTP GET
isteklerini işlediğini gösteren ile WebGetAttributeek açıklama eklenir. WebGetAttribute açıkça belirtmediği UriTemplateiçin işlemi, adlı s
bir sorgu dizesi parametresi kullanılarak giriş dizesinin geçirilmesini bekler. Hizmetin beklediği URI biçiminin özelliği kullanılarak UriTemplate özelleştirilebileceğini unutmayın.
İşlemEchoWithPost
, bir GET
işlem olmadığını (yan etkileri vardır) belirten ile WebInvokeAttributeek açıklama eklenir. WebInvokeAttribute açıkça belirtmediği Method
için, işlem istek gövdesinde dizesi olan HTTP POST
isteklerini işler (örneğin, XML biçiminde). İstek için HTTP yönteminin ve URI biçiminin sırasıyla ve UriTemplate özellikleri kullanılarak Method özelleştirilebileceğini unutmayın.
App.config dosyası, WCF hizmetini özelliği olarak ayarlanmış true
bir varsayılan WebHttpEndpointHelpEnabled değerle yapılandırıyor. Sonuç olarak WCF altyapısı, hizmete HTTP istekleri oluşturma ve hizmetin HTTP yanıtını kullanma hakkında bilgi sağlayan otomatik HTML tabanlı bir yardım sayfası http://localhost:8000/Customers/help
oluşturur.
Program.cs, bir WCF kanalı fabrikasının hizmete çağrı yapmak ve yanıtları işlemek için nasıl kullanılabileceğini gösterir. Bunun bir WCF hizmetine erişmenin yalnızca bir yolu olduğunu unutmayın. ve WebClientgibi HttpWebRequest diğer .NET Framework sınıflarını kullanarak hizmete erişmek de mümkündür.
Örnek, şirket içinde barındırılan bir hizmet ve her ikisi de konsol uygulamasında çalışan bir istemciden oluşur. Konsol uygulaması çalışırken istemci hizmete istekte bulunur ve yanıtlardan konsol penceresine ilgili bilgileri yazar.
Bu örneği kullanmak için
Temel Http Hizmeti Örneği için çözümü açın. Visual Studio 2012'yi başlatırken, örneğin başarıyla yürütülmesi için yönetici olarak çalıştırmanız gerekir. Bunu yapmak için Visual Studio simgesine sağ tıklayın ve bağlam menüsünden Yönetici istrator Olarak Çalıştır'ı seçin.
Çözümü oluşturmak için Ctrl+Shift+B tuşlarına basın ve ardından Ctrl+F5 tuşlarına basarak konsol uygulamasını hata ayıklamadan çalıştırın. Konsol penceresi görüntülenir ve çalışan hizmetin URI'sini ve çalışan hizmet için HTML yardım sayfasının URI'sini sağlar. Herhangi bir zamanda, tarayıcıya yardım sayfasının URI'sini yazarak HTML yardım sayfasını görüntüleyebilirsiniz. Örnek çalışırken istemci geçerli etkinliğin durumunu yazar.
Örneği sonlandırmak için herhangi bir tuşa basın.