WCF和REST和SOAP之间有什么关系? WCF是基于这些技术之一(REST还是SOAP),还是一种独立的技术?
我有2个解决scheme: – 服务器解决scheme – 服务器注册到我的本地主机IIS: http:// localhost / MyApp / 客户端从本地主机应用程序添加WCF服务(服务引用): http://localhost/MyApp/MyService.svc 当我运行客户端时,我希望能够看到来回传递的消息。 我下载了Fiddler,但它似乎并不想让我看到任何stream量被发送,除非我真的使用networking浏览器。 我使用Fiddler错误还是有另一个工具,我应该用这个? 为了澄清,我期望做的是看到实际的消息被传入。我不想对他们做任何事情,除了亲眼看到他们。 我喜欢WCF服务日志实用程序,但我不认为我有那里正确的设置。 我看不到实际的肥皂信息,只是收到一条信息。 而且还要进一步澄清,只要我能够轻松地看到消息,我不在乎使用什么工具。
SOAP XML: <?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <PaymentNotification xmlns="http://apilistener.envoyservices.com"> <payment> <uniqueReference>ESDEUR11039872</uniqueReference> <epacsReference>74348dc0-cbf0-df11-b725-001ec9e61285</epacsReference> <postingDate>2010-11-15T15:19:45</postingDate> <bankCurrency>EUR</bankCurrency> <bankAmount>1.00</bankAmount> <appliedCurrency>EUR</appliedCurrency> <appliedAmount>1.00</appliedAmount> <countryCode>ES</countryCode> <bankInformation>Sean Wood</bankInformation> <merchantReference>ESDEUR11039872</merchantReference> </payment> </PaymentNotification> </soap:Body> </soap:Envelope> 如何获得“付款”元素? 我尝试parsing(PHP) $xml = simplexml_load_string($soap_response); $xml->registerXPathNamespace('soap', 'http://schemas.xmlsoap.org/soap/envelope/'); foreach ($xml->xpath('//payment') as $item) { print_r($item); } 结果是空的:(任何想法如何parsing它是正确的?
问题:在实际发送请求之前,有没有办法查看使用PHP SoapClient函数调用创build的XML? 背景: 我是WSDL通信的新手,我有一个客户希望我使用PHP进行开发,这是一种与使用ASP.NET编写的WSDL服务进行通信的方式。 我已经得到了很多,但是在传递一个复杂的types时遇到了一个问题。 到目前为止,我已经尝试了几个不同的东西。 1)设置单个数组,例如$params->Person->name $params->Person->address 2)设置一个数组$Person = array('name'=>"joe",'address' = "123"); 然后作为parameter passing给调用“Person”=> $ Person; 和其他一些。 但每次我得到错误 SoapException:服务器无法处理请求—> System.Exception:Person是必需的。 在服务名称。 为了进一步解决问题,我想查看正在发送的XML文档,以查看它是否以我期待的方式创build复杂types。 我正在使用$client = new SoapClient('wsdldoc.asmx?WSDL');创build服务$client = new SoapClient('wsdldoc.asmx?WSDL'); 用$client->CreateUser($params);调用它$client->CreateUser($params); 然后尝试使用函数$client->__getLastRequest();来查看它$client->__getLastRequest(); 但它从来没有使__getLastRequest,因为它在调用CreateUser($ params)时发生致命错误。 再次的问题:有没有办法查看由CreateUser($ params)调用创build的XML而不实际发送它,并导致致命的错误
我需要对https://sandbox.mediamind.com/Eyeblaster.MediaMind.API/V2/AuthenticationService.svc?wsdl进行SOAP web服务调用,并在传递参数时使用ClientLogin操作:ApplicationKey,Password和UserName 。 响应是UserSecurityToken。 他们都是string。 这里是链接完全解释我正在尝试做什么: https : //sandbox.mediamind.com/Eyeblaster.MediaMind.API.Doc/?v=3 我怎么能在命令行上做到这一点? (Windows和/或Linux会有所帮助)
用JSON接收和发送数据是通过简单的HTTP请求完成的。 而在SOAP中,我们需要处理很多事情。 parsingXML也有时很难。 即使Facebook在Graph API中使用JSON。 我仍然想知道为什么还要使用SOAP? 有没有什么理由或地区的SOAP仍然是一个更好的select? (尽pipe数据格式) 而且,在简单的客户端 – 服务器应用程序(如与服务器连接的移动应用程序)中,SOAP可以比JSON有什么优势? 考虑到我提供的信息(如果有的话),如果有人可以争取JSON和SOAP之间的主要/显着差异,我将非常感激。
在Java中,自顶向下的Web服务和自底向上的Web服务有什么区别? 另外,SOAP和REST-ful Web服务有什么区别?
任何人都知道我怎么能张贴来自PHP的SOAP请求?
这就是问题。 我在Apache上有PHP 5.2.9,我无法升级PHP。 有没有办法让我在PHP 5.2.9中启用SOAP? 当PHP手册说:“要启用SOAP支持,使用–enable-soapconfigurationPHP”,PHP手册完全没有帮助。 我如何configuration?
我知道RESTful是一种架构风格,但究竟是什么使得基于SOAP的Web服务不能算作RESTful呢? 我不清楚下面哪些点(来自维基百科 ),不符合SOAP。 客户端服务器 无状态 可caching 分层系统 按需代码(可选) 统一的界面 资源的识别 通过这些陈述来操纵资源 自我描述的信息 超媒体作为应用程序状态的引擎 编辑 :我刚刚遇到这个总结得很好。 REST不是RPC,RPC说,“定义一些做某事的方法”,而REST说,“定义一些资源,他们将有这些方法”。 这是一个微妙而重要的区别,当给定一个URI时,任何人都知道他们可以通过预定义的方法与之交互,并接收标准的HTTP响应。 所以给定http://www.peej.co.uk/我知道我可以发出一个GET并接收一些有意义的东西。 然后,我可能会尝试一个PUT来改变它,并收到一个有意义的HTTP错误代码,因为我没有被授权干涉它。