我想使用PHP调用C#服务,任何人都知道如何去做?谢谢使用PHP调用C#Web服务
回答
创建一个与WSDL匹配并通过HTTP POST发送的SOAP XML文档。 见here for an example。
您发送此:
POST /webservices/tempconvert.asmx HTTP/1.1
Host: www.w3schools.com
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
<soap12:Body>
<CelsiusToFahrenheit xmlns="http://tempuri.org/">
<Celsius>string</Celsius>
</CelsiusToFahrenheit>
</soap12:Body>
</soap12:Envelope>
而且把它恢复:
HTTP/1.1 200 OK
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
<soap12:Body>
<CelsiusToFahrenheitResponse xmlns="http://tempuri.org/">
<CelsiusToFahrenheitResult>string</CelsiusToFahrenheitResult>
</CelsiusToFahrenheitResponse>
</soap12:Body>
</soap12:Envelope>
嗨Josh, 如果我希望从web服务获取报告文件(以PDF格式为文件)到php,那么仍然是使用最好的方法? – 2009-01-21 01:13:58
@Jin:您可以通过使用UUEncode或base64对返回的XML进行编码来直接发送二进制文件。一个更好的计划是在服务器上生成PDF,给它一个唯一的URL,然后客户端可以在两个请求中获取报告 - 一个SOAP请求生成报告,然后是一个普通的http请求来检索报告。 – Eclipse 2010-01-28 16:37:04
我从来没有在PHP的> C#做这件事,我用C#调用PHP Web服务和我对于本地PHP类,我总是使用Zend Framework包装器。您应该查看Zend_Soap_Client,如果它与Zend_Soap_Server类似,则只是在PHP SOAP类中包含一些增值内容的包装。
而且,我应该说,它所做的一切就是将@Josh说成一个很好的课程,并自动为你做一些事情。
没有什么东西叫做“C#Web服务”。你的意思是基于SOAP远程调用和WSDL描述的XML Web服务。
事实上,所有的SOAP服务都应该是兼容的,无论是.Net,PHP还是Java。但在实践中,小问题会让问题变得更加困难。
PHP有许多不同的SOAP库,但用于连接PHP的ASP.NET XML Web Service,但nuSOAP为我提供了最好的结果。它基本上是一组使用基于SOAP的Web服务的PHP类。最简单的客户端代码看起来是这样的:
<?php
// Pull in the NuSOAP code
require_once('nusoap.php');
// Create the client instance
$client = new soapclient('http://localhost/phphack/helloworld.php');
// Call the SOAP method
$result = $client->call('hello', array('name' => 'Scott'));
// Display the result
print_r($result);
?>
- 1. 使用Php调用.Net Web服务
- 2. 从PHP调用Web服务?
- 3. PHP SOAP web服务调用
- 4. 从C++调用Web服务
- 5. 使用长参数从PHP调用C#Web服务
- 6. 在C#中使用PHP的Web服务#
- 7. 从另一个C#Web服务调用C#Web服务
- 8. .NET使用php web服务
- 9. 使用Web服务C#?
- 10. 调用Web服务
- 11. 调用Web服务
- 12. 调用Web服务
- 13. 调用Web服务
- 14. Web API调用Web服务
- 15. 从PHP调用经典ASP Web服务
- 16. 从php调用asp.net web服务
- 17. 从php/ruby调用wcf/web服务
- 18. 从JQuery(Ajax)调用PHP SOAP Web服务
- 19. 如何从Node.js调用PHP Web服务
- 20. 调用php的web服务与url
- 21. 从PHP调用SOAP Web服务
- 22. 如何使用目标C调用Sharepoint Web服务GetListItems C
- 23. 调用C#web服务方法
- 24. C#调用Web服务,但时间
- 25. c#从web api调用windows服务
- 26. 从C++ v6调用web服务
- 27. 从目标C调用.Net Web服务
- 28. 如何使用Java调用Web服务
- 29. 无法使用Lists.UpdateListItems Web服务调用
- 30. 使用Ajax调用web服务
你是指Webservice? – 2009-01-19 23:22:19