this WSDL을 사용하여 뉴스 레터 서비스에 SOAP 요청을 보내려고합니다.PHP SoapClient 요청
$client = new SoapClient($wsdl_url, array(
'login' => 'myusername',
'password' => 'mypassword',
'trace' => true
));
$client->AddSubscriber(
new SoapParam('MyFirstName', 'FirstName'),
new SoapParam('MyLastName', 'LastName'),
new SoapParam('[email protected]', 'Email')
);
나는 예외를 받고 있어요 : 여기
<?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="schemas.xmlsoap.org/soap/envelope/">
<soap:Header>
<AuthHeader xmlns="admin.ekeryx.com">
<Username>string</Username>
<Password>string</Password>
<AccountID>string</AccountID>
</AuthHeader>
</soap:Header>
<soap:Body>
<AddSubscriber xmlns="admin.ekeryx.com">
<subscriber>
<ID>string</ID>
<FirstName>string</FirstName>
<LastName>string</LastName>
<Email>string</Email>
</subscriber>
<overwritable>boolean</overwritable>
</AddSubscriber>
</soap:Body>
</soap:Envelope>
전송되는 무슨이다 :
여기End element 'Body' from namespace 'schemas.xmlsoap.org/soap/envelope/' expected. Found element 'LastName' from namespace ''. Line 2, position 156.
이 서비스가 AddSubscriber에 대한 기대 무엇 여기
내 PHP입니다 :<SOAP-ENV:Envelope xmlns:SOAP-ENV="schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="tempuri.org/">
<SOAP-ENV:Body>
<ns1:AddSubscriber/>
<LastName>MyLastName</LastName>
<Email>[email protected]</Email>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
저는 SOAP에 익숙하지 않았으며, 그 곳곳의 문서를 찾고 있었지만, 제가하고있는 일에 대한 훌륭한 참고 자료를 찾을 수없는 것 같습니다.
모든 안내는 대단히 감사하겠습니다!
감사합니다. 예를 들어 주시겠습니까? 내가 보여 PHP 사이트의 예를 찾고 있어요 :
<?php
class SOAPStruct {
function SOAPStruct($s, $i, $f)
{
$this->varString = $s;
$this->varInt = $i;
$this->varFloat = $f;
}
}
$client = new SoapClient(null, array('location' => "http://localhost/soap.php",
'uri' => "http://test-uri/"));
$struct = new SOAPStruct('arg', 34, 325.325);
$soapstruct = new SoapVar($struct, SOAP_ENC_OBJECT, "SOAPStruct", "http://soapinterop.org/xsd");
$client->echoStruct(new SoapParam($soapstruct, "inputStruct"));
?>
당신이 등 모든 바르 $this->FirstName = $first_name
을 할당, 나는 가입자 PHP 클래스를 작성해야 건가요 ... 다음에 넣어 SoapVar 인코딩 SOAP_ENC_OBJECT
와 함께? 구독자 구조를 더 잘 표현하려면 어떻게해야합니까?
있습니다 찾고있는 것을하지 SOAP 헤더 당신이 겪고있는 문제는 다음과 같은 코드는 HTTP 헤더에 로그인과 암호를 전달하는 것입니다 생각 , 게시 규칙 당 최대 1 개의 하이퍼 링크를 준수하기 위해 코드의 모든 URL에서 http : //를 제거했습니다. –