我查看了几个相关主题,但没有解决我的wsdl / soap / php问题。
我的标题看起来像这样;
<?xml version="1.0" encoding="ISO-8859-1"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns="http://">
<SOAP-ENV:Header>
<ns:authentication>
<username>username</username>
<password>password</password>
</ns:authentication>
</SOAP-ENV:Header>
</SOAP-ENV:Envelope>
我无法成功连接。我已经尝试过示例代码,但没有一个能够运行。
感谢任何帮助。
其他身份验证信息:
<xsd:complexType>
<xsd:all>
<xsd:element name="username" nillable="false" minOccurs="1" maxOccurs="1">
<xsd:annotation>
<xsd:documentation>Username for authenticatie</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="4000"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="password" nillable="false" minOccurs="1" maxOccurs="1">
<xsd:annotation>
<xsd:documentation>Password for authentication</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="4000"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:all>
</xsd:complexType>
完整的工作请求如下所示:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:zone="http://">
<soapenv:Header>
<zone:authentication>
<!--You may enter the following 2 items in any order-->
<username>myusername</username>
<password>mypassword</password>
</zone:authentication>
</soapenv:Header>
<soapenv:Body>
<zone:searchSubscriptionRequest>
<!--You may enter the following 2 items in any order-->
<requestTag>test</requestTag>
<zipcode>000 AB</zipcode>
</zone:searchSubscriptionRequest>
</soapenv:Body>
答案 0 :(得分:1)
它不使用标准<SOAP-ENV:Header>
身份验证,而是用户名和密码是<SOAP-ENV:Body>
中的常规变量。
该代码段已脱离上下文,因此我无法告诉您如何设置它们,但您可以使用一些WSDL到PHP代码生成器来获取PHP类以供您发现。