DİNLENME XML servisi için SOAP bitiş noktaları /
XML hizmeti var ve RESTfull bir hizmet ve SABUN servis olarak ifşa etmek istiyorum. Kimse daha önce böyle bir şey yaptı?
CEVAP
İki farklı uç olarak hizmet getirebilir. SOAP bir SABUN örneğin basicHttpBinding destekleyen bağlama, Dinlendirici bir webHttpBinding kullanabilirsiniz kullanabilirsiniz. GERİSİ senin servis bu durumda JSON olacak sanırım, aşağıdaki davranış yapılandırma ile iki uç nokta yapılandırmanız gerekir
<endpointBehaviors>
<behavior name="jsonBehavior">
<enableWebScript/>
</behavior>
</endpointBehaviors>
Senin senaryoda bitiş noktası yapılandırma örneğidir
<services>
<service name="TestService">
<endpoint address="soap" binding="basicHttpBinding" contract="ITestService"/>
<endpoint address="json" binding="webHttpBinding" behaviorConfiguration="jsonBehavior" contract="ITestService"/>
</service>
</services>
yani, hizmet sunulacak
Bu Huzurlu yapmak için geçerli [WebGet] işlem sözleşme. örneğin
public interface ITestService
{
[OperationContract]
[WebGet]
string HelloWorld(string text)
}
Eğer geri KALAN hizmet JSON ise not, operasyon parametreleri karmaşık türü içerebilir.
SOAP ve Dinlendirici ÇİÇEĞİ için yazılan(XML) cevap
Dönüş biçimi olarak düz eski XML, SOAP ve XML hem de işe yarar bir örnektir.
[ServiceContract(Namespace = "http://test")]
public interface ITestService
{
[OperationContract]
[WebGet(UriTemplate = "accounts/{id}")]
Account[] GetAccount(string id);
}
SONUNA ÇİÇEĞİ davranışDüz Eski XML
<behavior name="poxBehavior">
<webHttp/>
</behavior>
Bitiş noktası
<services>
<service name="TestService">
<endpoint address="soap" binding="basicHttpBinding" contract="ITestService"/>
<endpoint address="xml" binding="webHttpBinding" behaviorConfiguration="poxBehavior" contract="ITestService"/>
</service>
</services>
Hizmet beğenisine sunuluyor
DİNLENME isteği tarayıcıda dene
SOAP isteği müşteri hizmet başvuru ekleme, sonra SABUN hizmeti için yapılandırma son nokta
<client>
<endpoint address="http://www.example.com/soap" binding="basicHttpBinding"
contract="ITestService" name="BasicHttpBinding_ITestService" />
</client>
C#
TestServiceClient client = new TestServiceClient();
client.GetAccount("A123");
Bunu yapmanın başka bir yolu da iki farklı hizmet sözleşmesi ve özel yapılandırma ile her birini ortaya çıkarmak için. Bu kod düzeyinde bazı çiftleri, ancak günün sonunda oluşturabilir, çalışma yapmak istiyorum.
Nasıl terminalden Curl ile JSON veri g...
Doğrulama başarısız oldu geçersiz veya...
Android açılışta bir servisi başlatmak...
AngularJS : servisi kullanmak için ne ...
'uygun HTTP durum kodu, bir DİNLE...