1
A
回答
0
在你的情況,我肯定會使用WCF與REST結合(webHttpBinding
) - 我會不同意這件事的複雜化學習。
查閱這些資源,開始:
- MSDN WCF REST developer center
- DOTNET的晃動的電視節目#135:Keith Elder Demystifies WCF
- DOTNET的晃動的電視節目#122:Miguel Castro on Extreme WCF
0
使用XML響應創建Web服務的最簡單方法是,不要開玩笑,將XML文件放在標準Web服務器上並將其作爲靜態文件提供。
我猜你想要的東西比這更靈活,但...
你有幾種選擇,而WCF是在頻譜的更復雜(但靈活)結束。第一個問題:你的客戶是什麼?你在寫嗎?你想寫一個可以被其他客戶使用的Web服務嗎?
您是否想使用REST - 即普通舊式XML(POX)而不是普通舊式HTTP? XML-RPC?肥皂?
WCF支持所有這些,所以這真的取決於您想支持哪些客戶端。
更新:如果你想支持XML-RPC,你可能會比從this implementation of XML-RPC for WCF by Clemens Vasters開始更糟糕。我問了一個關於這個here的問題。
0
本文中幾乎沒有可用的鏈接。希望他們能幫助你 -
http://social.msdn.microsoft.com/Forums/en/wcf/thread/b082d6de-d1e9-4e51-a0ab-0fe98d7003e6
0
我只是做了一個Web服務。
PHP服務器端代碼:
<?php // instantiate SOAP server
function sendXmlMsg($msg){
return $msg;
}
ini_set("soap.wsdl_cache_enabled", "0"); // disabling WSD
$server = new SoapServer("mark.wsdl");
// Register exposed method
$server->addFunction('sendXmlMsg'); // generate captcha
//$server->addFunction('check_captcha'); // check captcha ID
$server->handle(); //?>
我的WSDL文件是
<?xml version ='1.0' encoding ='UTF-8' ?>
<definitions name='Msg91'
targetNamespace='http://localhost/webtest/test.wsdl'
xmlns:tns='http://localhost/webtest/test.wsdl'
xmlns:soap='http://schemas.xmlsoap.org/wsdl/soap/'
xmlns:xsd='http://www.w3.org/2001/XMLSchema'
xmlns:soapenc='http://schemas.xmlsoap.org/soap/encoding/'
xmlns:wsdl='http://schemas.xmlsoap.org/wsdl/'
xmlns='http://schemas.xmlsoap.org/wsdl/'>
<message name='sendXmlMsgRequest'>
<part name='msg' type='xsd:string'/>
</message>
<message name='sendXmlMsgResponse'>
<part name='Result' type='xsd:string'/>
</message>
<portType name='Msg91PortType'>
<operation name='sendXmlMsg'>
<input message='tns:sendXmlMsgRequest'/>
<output message='tns:sendXmlMsgResponse'/>
</operation>
</portType>
<binding name='Msg91Binding' type='tns:Msg91PortType'>
<soap:binding style='rpc'
transport='http://schemas.xmlsoap.org/soap/http'/>
<operation name='sendXmlMsg'>
<soap:operation soapAction='urn:xmethods-delayed-quotes#sendXmlMsg'/>
<input>
<soap:body use='encoded' namespace='urn:xmethods-delayed-quotes'
encodingStyle='http://schemas.xmlsoap.org/soap/encoding/'/>
</input>
<output>
<soap:body use='encoded' namespace='urn:xmethods-delayed-quotes'
encodingStyle='http://schemas.xmlsoap.org/soap/encoding/'/>
</output>
</operation>
</binding>
<service name='Msg91Service'>
<port name='Msg91Port' binding='tns:Msg91Binding'>
<soap:address location='http://localhost/webtest/test.php'/>
</port>
</service>
</definitions>
客戶端PHP文件:
<?php
$client = new SoapClient("mark.wsdl");
$params= array('HiT');
echo $client->__soapCall('sendXmlMsg', $params);
?>
我希望這會幫助你。
0
創建WCF服務其實很簡單。網上有很多教程。
至於返回XML,有幾種方法。 您可以通過將「xml」轉換爲服務中的字符串然後再轉換回客戶端來實現「老派」SOAP Web服務。它不漂亮,但它的工作原理。
另一種方式,我會這樣做,將使用WCF和創建映射您的XML的數據契約。
你可以用數據契約做一些相當不錯的東西,比如傳遞數據集和自定義類型,但是這有時會限制你可以使用的綁定類型。
相關問題
- 1. 使用單個標準響應對象創建WCF web服務
- 2. 用java爲php創建web服務(XML)
- 3. WCF Web服務響應XML文件
- 4. 將Web服務響應另存爲XML
- 5. 優化Web服務的XML響應
- 6. 創建調用Rest-APIs(google,flickr)的服務並以XML響應
- 7. 無法使用CRON從SOAP Web服務接收xml響應
- 8. 爲Web服務創建XML字符串
- 9. 創建XML對象,並從web服務
- 10. 響應與304 - 使用ASP.NET Web服務
- 11. web服務響應是使用MessageContract
- 12. 使用XML構建Web服務?
- 13. 如何在我的Web服務中創建自定義JSON/XML響應
- 14. 使用現有Web服務創建新的Web服務
- 15. 用C#創建Web服務
- 16. 使用REST XML Web服務
- 17. 使用Plain Old XML(POX)創建Spring Web服務
- 18. 創建JAX-WS SOAP Web服務使用XML模式
- 19. 如何使用.net Web服務創建自定義XML標記?
- 20. 如何使用Sharepoint Web服務創建XML Webparts?
- 21. Web服務響應工作
- 22. SOAP響應WCF Web服務
- 23. 純Jquery Web服務響應
- 24. Web服務捕獲響應
- 25. Web服務響應壓縮
- 26. RESTful Web服務的響應
- 27. Web服務沒有響應
- 28. Web服務響應是MessageElement?
- 29. 使用php獲得空web服務構建響應
- 30. Foreach xml服務器響應
我想如果你深入研究WCF REST解決方案,你不會發現生成XML複雜。我發現RESTful .NET這本書也很有幫助。 http://www.amazon.com/RESTful-NET-Build-Consume-Services/dp/0596519206/ref=sr_1_cc_2?ie=UTF8&qid=1286189339&sr=1-2-catcorr – kenny 2010-10-04 10:50:17