2008-09-09 19 views

cevap

3

ve harika işler:

+0

Parametre, POST GET değil POST yoluyla talep ediliyor – aku

+0

Grab aku'nun POST bilgisi ve cevabı düzenle - Henüz 2k rapim yok :) –

4

Ben okumak için yararlı olacağını düşünüyorum bu ilk:

Bu web hizmetleri XML girişi nasıl dahil NET'te nasıl kullanıldığını öğreticiler bir dizi olduğu

(.NET)

Creating and Consuming a Web Service kullanılmış (serileştirme). Bu kodu test etmek için bir şansı yoktu

var client = new WebClient(); 
var response = client.UploadValues("www.webservice.com", "POST", new NameValueCollection {{"fXML", "1"}}); 
using (var reader = new StringReader(Encoding.UTF8.GetString(response))) 
{ 
    var xml = XElement.Load(reader); 
    var value = xml.Element("somekey").Value; 
    Console.WriteLine("Some value: " + value);     
} 

Not, ancak çalışması gerekir :) Bu kodu kullanmak

2

Sen böyle bir şeyi kullanabilirsiniz:

System.Xml.XmlDocument xd = new System.Xml.XmlDocument; 
xd.Load("http://www.webservice.com/webservice?fXML=1"); 
string xPath = "/xml/somekey"; 
// this node's inner text contains "somevalue" 
return xd.SelectSingleNode(xPath).InnerText; 

DÜZENLEME: sadece bir webcoder bahsediyoruz değil sadece düz XML ediyoruz gerçekleşmiştir. Visual Studio Çözümünüzde, Çözüm Gezgini'nde Referansları sağ tıklayıp "Web Referansı Ekle" yi seçin. Bir URL soran bir iletişim kutusu görünecek, "http://www.webservice.com/webservice.asmx" adresine yapıştırabilirsiniz. VS ihtiyacınız olan tüm yardımcıları otomatik olarak üretecek. Sonra sadece çağırabilirsiniz: Ayrıca özellikle ziyade SABUN daha POST kullanmanız gerekiyorsa o zaman POST almayı web hizmeti yapılandırabilir eklemeye değebilir

com.webservice.www.WebService ws = new com.webservice.www.WebService(); 
// this assumes your web method takes in the fXML as an integer attribute 
return ws.SomeWebMethod(1); 
+0

Bu bir Web hizmeti için çok fazla iş ve ek yük gibi görünüyor ?! –

+0

Rob, web servisi her zaman bir WSDL \ SOAP iyiliği değildir. Bazen verileri sunucudan kendiniz almanız ve ayrıştırmanız gerekir. Bu soru hakkında garip bir şey bir POST yöntemidir. Genellikle böyle basit hizmetler GET kullanır. – aku

İlgili konular