且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

Soap身份验证标头和使用PHP的请求

更新时间:2022-04-15 22:25:23

您即将达到目标.在这里,我修改了几行代码:

you was near to reach your goal. Here I have modified few lines of your code:

    <?php

    $username = '';
    $password = '';

    $soapURL = "http://m.cmd-it.dk/reservations.asmx?WSDL";

    $client = new SoapClient($soapURL,array());

    $auth = array(
        'UserName' => $username,
        'Password' => $password,
        'createReservation'=> array(
            'reservation2CompanyName' => 'Tester',
            'customerFirstName' => 'test',
            'customerLastName' => 'tester',
            'customerTelephoneNumber' => '22334455',
            'customerMail' => 'test@example.com',
            'reservationDate' => date("j/m/Y", time()),
            'reservationTime' => date("H:i", time()),
            'reservationPAX' => '3',
            'reservationRemarks' => 'test',
            'TestMode' => 1
        )
    );
    $header = new SoapHeader('http://cmd-it.dk/','authentification',$auth,false);
    $client->__setSoapHeaders($header);

    /* Requesting function list (interface) from SOAP server */
    echo "<pre>";
    var_dump($client->__getFunctions());

    /* Executing a fuction, for example isAlive method */
    $response = $client->__soapCall("isAlive", array("isAlive" => "true"));
    var_dump($response);



/* Here a list of functions available on your server that we have requested by getFucntions() method */
/*
array(4) {
  [0]=>
  string(44) "isAliveResponse isAlive(isAlive $parameters)"
  [1]=>
  string(74) "createReservationResponse createReservation(createReservation $parameters)"
  [2]=>
  string(44) "isAliveResponse isAlive(isAlive $parameters)"
  [3]=>
  string(74) "createReservationResponse createReservation(createReservation $parameters)"
}
*/

在上面的示例中,我们将请求接口(getfunctions)并执行SOAP方法(__soapCall).

In the above example we will ask for interface (getfunctions) and execute a SOAP method (__soapCall).

致谢