`
endual
  • 浏览: 3565409 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

PHP5 soap web services

    博客分类:
  • html
阅读更多


一.开发环境:
  1 WAMPserver PHP5.3 + apache + mysql的集成环境
  2.Eclipse + PHP插件
  3。python2.5和PHP5语言版本
二:开发代码
  1.python 做一个服务端,发布为python web services.
 
代码如下:
import soaplib
import soaplib.core
from soaplib.core.service import rpc, DefinitionBase,soap
from soaplib.core.model.primitive import String, Integer
from soaplib.core.server import wsgi
from soaplib.core.model.clazz import Array


class HelloWorldService(DefinitionBase):
    @soap(String,_returns=String)
    def say_hello(self,name):
        results = "hello,"+name;
        return results


if __name__=='__main__':
    try:
        from wsgiref.simple_server import make_server
        soap_application = soaplib.core.Application([HelloWorldService], 'tns')
        wsgi_application = wsgi.Application(soap_application)
        server = make_server('10.21.237.120', 8010, wsgi_application)
        print "8010........."
        server.serve_forever()
    except ImportError:
        print "Error: example server code requires Python >= 2.5"

WSDL地址:http://10.21.237.120:8010/server?wsdl

2.PHP5作为php 客户端调用python web services
代码如下:

<?php

header("content-type:text/html;charset=utf-8");

try {
    //$client = new SoapClient("HelloService.wsdl",array('encoding'=>'UTF-8'));
  $client = new SoapClient("http://10.21.237.120:8010/server?wsdl",array('encoding'=>'utf-8'));
//   var_dump($client->__getFunctions());
//   print("<br/>");
//   var_dump($client->__getTypes());
//   print("<br/>");  

  $parm1 = "KING";
          $param = array('name' => $parm1);
          $arr = $client->say_hello($param);
//   print_r($arr); 
  $ar = get_object_vars($arr);
  print("<br/>");
//   print_r($ar);
  print("<br/>");
  echo $ar["say_helloResult"];

} catch (SOAPFault $e) {

    print $e;
}
?>

三:soap环境的搭建

    这个比较烦恼的事情,WAMP集成了PHP5自带了soap扩展,所谓的扩展就是有soap 的功能!!
   python 端用的是soaplib,官方文档有点错误的,我的代码是根据官方代码修改了下!!
四:遇到问题怎么办
   你可以邮件给我或者QQ1019990976,技术分享,广交天下好朋友。
   我已经录制了视频。

分享到:
评论

相关推荐

    PHP SOAP实现Web Services 完整实例WSDL服务端+客户端

    PHP实现的Web Services 完整实例,WSDL交互。 PHP.INI,请开启php_soap。 服务端:直接解压到网站根目录下,访问地址:http://localhost/hbj/wsdl.php?wsdl 客户端:http://localhost/hbj/Client.php ,显示hello ...

    php实现webservices接口

    【PHP实现Web Services接口】 ...总结,PHP通过WSDL方式实现Web Services接口,结合SOAP协议,可以让PHP应用程序与其他系统进行无缝交互。理解并掌握这些技术,有助于构建健壮、可扩展的分布式系统。

    基于php的webservices的研究与应用.pdf

    在农民工信息管理系统中,作者利用PHP实现的Web Services数据共享模块,可能涉及了创建XML数据结构来封装信息,编写SOAP客户端和服务器端代码以处理请求和响应,以及使用WSDL来描述服务接口。通过这种方式,不同系统...

    PHP.Web.Services.APIs.for.the.Modern.Web.2nd.Edition

    PHP is ideally suited for both consuming and creating web services. You’ll learn how to use this language with JSON, XML, and other web service technologies. The second edition has been updated to ...

    php-soap(web,server)

    尽管SOAP基于XML,其解析和编码过程可能会影响性能,但PHP-SOAP扩展提供了一些优化选项,如禁用WSA(Web Services Addressing)头、禁用SOAP动作检查等,以减少不必要的处理。 总结: PHP-SOAP扩展为PHP开发者提供...

    RESTful PHP Web Services

    与SOAP和WSDL所构建的严格定义的Web服务不同,RESTful Web Services更加灵活,易于理解和使用。 在PHP中开发RESTful Web Services涉及几个关键知识点,包括对REST概念的理解、PHP语言的使用技巧、如何处理HTTP请求...

    基于php的web services的研究与应用.pdf

    同时,PHP也能作为服务请求者,通过解析WSDL文档,使用SOAP库来调用其他系统的Web Services。这种方式实现了不同系统间的数据共享和功能整合,提高了系统的互操作性。 4. 数据共享模块实现 在农民工作息管理系统中...

    php写的webservices

    标题中的“php写的webservices”指的是使用PHP编程语言构建的Web服务。Web服务是一种通过互联网进行应用程序间交互的标准,允许不同系统之间的数据交换。在PHP中实现Web服务,开发者可以利用PHP的内置功能或者第三方...

    Microsoft.Exchange.WebServices

    微软Exchange Web服务(Microsoft.Exchange.WebServices,简称EWS)是一个应用程序编程接口(API),它允许开发者构建能够与Microsoft Exchange Server进行交互的应用程序。EWS是Exchange Server 2007及更高版本的...

    PHP的soapDemo

    WSDL(Web Services Description Language)是SOAP服务的接口定义,它描述了服务的地址、消息结构、操作和绑定。在调用服务时,通常需要提供WSDL文件的URL,除非服务启用了无WSDL模式。 8. **性能优化**: 使用...

    sakai webservices 使用方式

    Apache Axis 1是一个用于创建和调用Webservices的工具包,它提供了强大的功能来支持SOAP协议,使得不同应用之间能够进行高效的数据交换。 - **JWS 文件**: Sakai的Webservices主要通过JWS (Java Web Services) 文件...

    C#winform调用PHP_Webservices例子

    当需要在C#的WinForm应用程序中与PHP Web服务进行交互时,可以利用Web服务(Web Services)实现数据交换。本文将详细介绍如何在C# WinForm应用中调用PHP Web服务。 首先,理解Web服务的基本概念。Web服务是一种基于...

    php 利用 nusoap 生成 webservices

    以下将详细讲解如何利用nusoap生成Webservices,以及服务器端和客户端的具体实现。 一、什么是Webservices? Webservices是一种基于互联网的、能够互相交换数据的服务。它们使用开放标准(如XML、SOAP、WSDL和UDDI...

    php-soap 扩展源文件

    PHP的SOAP扩展可以用来提供和使用Web services。换句话说,PHP开发者可以利用这个PHP扩展来写他们自己的Web services,也可以写一些客户端来使用给定的Web services。

    php soap操作实例

    3. WSDL(Web Services Description Language) WSDL文件是SOAP服务的接口定义,它描述了服务的位置、可用的方法、参数类型等。在PHP中,我们可以使用SoapServer的`__setLocation`和`__setSoapHeaders`方法来设置...

    用PHP编写增强的SOAP-Webservices

    【标题】"用PHP编写增强的SOAP-Webservices"主要涵盖了如何利用PHP这一流行的服务器端脚本语言来创建功能强大的SOAP(Simple Object Access Protocol)Web服务。SOAP是一种基于XML的协议,常用于在分布式环境中交换...

    php编写webservice soap服务端及客户端

    3. **设置命名空间和WSDL**:WSDL(Web Services Description Language)是SOAP服务的接口描述文件,定义了服务的结构和操作。可以通过 SoapServer 的 `setWsdl` 方法指定WSDL文件,或者使用 `setClass` 方法自动...

    PHP Oracle Web Development: Data Processing, Security, Caching, XML, Web Services, and Ajax

    书中详细介绍了如何安装和配置PHP与Oracle环境、连接PHP到Oracle数据库、在Oracle中实现业务逻辑处理、构建事务应用程序、使用安全性功能、通过缓存提高性能、利用XML特性、实现SOAP Web服务以及构建基于Ajax的...

    Building XML Web Services with PHP NuSOAP

    在《Building XML Web Services with PHP NuSOAP》教程中,作者通过两个实例展示了NuSOAP的应用。第一个实例是使用NuSOAP在PHP中创建一个Web服务,然后使用Visual Basic 6.0调用该服务。第二个实例则展示了如何使用...

Global site tag (gtag.js) - Google Analytics