首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > XML SOAP >

php webservice中 请教怎么把一个对象return给客户端

2012-03-15 
php webservice中 请问如何把一个对象return给客户端?这是我的webservice的方法:PHP codepublic function

php webservice中 请问如何把一个对象return给客户端?
这是我的webservice的方法:

PHP code
public function GetInfo()    {                class CenterInfo        {            private $ID='84fc2103-38ef-46ac-807b-9f5ad761ac00';            private $Type="SubDotnetCenter";            private $RootPath="D:\\Program Files\\JiangMin\\Center\\";            private $DatabaseType="MsSql";        }        $a=new CenterInfo();        $GetInfoResult=json_encode($a);         /// <summary>        /// 获取当前登录控制中心的相关信息        ///         /// </summary>        /// <returns>        ///    返回控制中心的相关信息,主要是控制台实现中需要的。        /// </returns>        ///         return  Array("GetInfoResult"=> new CenterInfo());    }


这是wsdl中该方法的以及返回值的定义:
XML code
<s:element name="GetInfo">                <s:complexType />            </s:element>            <s:element name="GetInfoResponse">                <s:complexType>                    <s:sequence>                        <s:element minOccurs="0" maxOccurs="1" name="GetInfoResult"                            type="tns:CenterInfo" />                    </s:sequence>                </s:complexType>            </s:element>            <s:complexType name="CenterInfo">                <s:sequence>                    <s:element minOccurs="1" maxOccurs="1" name="ID" type="s1:guid" />                    <s:element minOccurs="1" maxOccurs="1" name="Type"                        type="tns:NodeType" />                    <s:element minOccurs="0" maxOccurs="1" name="RootPath"                        type="s:string" />                    <s:element minOccurs="1" maxOccurs="1" name="DatabaseType"                        type="tns:EDataBase" />                </s:sequence>            </s:complexType>            <s:simpleType name="NodeType">                <s:restriction base="s:string">                    <s:enumeration value="DesktopClient" />                    <s:enumeration value="ServerClient" />                    <s:enumeration value="LinuxClient" />                    <s:enumeration value="Group" />                    <s:enumeration value="TopestDotnetCenter" />                    <s:enumeration value="SubDotnetCenter" />                    <s:enumeration value="TopestPhpCenter" />                    <s:enumeration value="SubPhpCenter" />                </s:restriction>            </s:simpleType>            <s:simpleType name="EDataBase">                <s:restriction base="s:string">                    <s:enumeration value="MsSql" />                    <s:enumeration value="Sqlite" />                </s:restriction>            </s:simpleType>


我像上边那样return时候 .net的客户端报错:

响应消息的内容类型 text/html 与绑定(text/xml; charset=utf-8)的内容类型不匹配。如果使用自定义编码器,请确保正确实现 

客户端不能变,请问我的php webservice这端应该如何return呢?

[解决办法]
你的编码格式 不同


统一编码格式

热点排行