mladjom / dhlbook
此包最新版本(dev-master)没有可用的许可信息。
DHL瑞典货运 DHLBookWS
dev-master
2016-09-09 14:17 UTC
Requires
- php: >=5.3.3
- ext-soap: *
- wsdltophp/packagebase: dev-master
This package is not auto-updated.
Last update: 2024-09-23 13:20:37 UTC
README
This Code is released under the GNU LGPL
This library is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published
by the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This library is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU Lesser General Public License for more details.
描述
这个库是一个针对DHL Book取件 - Web服务的PHP面向对象客户端。它实现了DHL DHL Book取件,详情请见http://www.dhldashboard.se/Services/Bookpickup/tabid/241/Default.aspx。查看此受限制的网页需要账户。
设置
您可以使用composer使用此库。
{ "require": { "mladjom/dhlbook": "*" } }
用法
此客户端不依赖任何框架,应该很容易与您的代码集成。
example.php包含了如何使用客户端和对DHL XML API进行请求的示例,包括预定取件、获取站点和获取站点详情。
为了使示例工作,您需要创建一个DHL货运账户。您可以通过访问他们的URL:http://www.dhlfreight.se/Bokatransport/Inrikesv%C3%A4gtransport/tabid/262/ctl/Register/Default.aspx来完成。
示例
请求运输
require_once __DIR__ . '/vendor/autoload.php'; /** * Minimal options */ $options = array( \WsdlToPhp\PackageBase\AbstractSoapClientBase::WSDL_URL => 'https://www.dhltoolbox.se/DHLBookWS/Book.asmx?wsdl', \WsdlToPhp\PackageBase\AbstractSoapClientBase::WSDL_CLASSMAP => \DHLBook\ClassMap::get(), \WsdlToPhp\PackageBase\AbstractSoapClientBase::WSDL_SOAP_VERSION => 'SOAP_1_2', ); /** * Samples for Book ServiceType */ $book = new \DHLBook\ServiceType\Book( $options ); /** * Credentials for all operations/methods */ $credentials = new \DHLBook\StructType\Credentials(); $credentials->User = 'BookAppUser'; $credentials->Password = 'BA%Pwd07'; /** * Sample call for BookPickup operation/method */ $requestMessageHeader = new \DHLBook\StructType\RequestMessageHeader(); $requestMessageHeader->MessageId = sprintf( '%04X%04X-%04X-%04X-%04X-%04X%04X%04X', mt_rand( 0, 65535 ), mt_rand( 0, 65535 ), mt_rand( 0, 65535 ), mt_rand( 16384, 20479 ), mt_rand( 32768, 49151 ), mt_rand( 0, 65535 ), mt_rand( 0, 65535 ), mt_rand( 0, 65535 ) ); $requestMessageHeader->TimeStamp = date( "Y-m-d" ) . 'T' . date( "H:i:s" ); $requestMessageHeader->Environment = 'Book'; $requestMessageHeader->RequestingSystem = 'TestApp'; $general = new \DHLBook\StructType\TGeneral(); $general->PickupDate = date( "Y-m-d" ); $general->CustomerID = 'your customer id'; $general->Note1 = 'Test utför ej'; $general->Note2 = ''; $general->FreightNo = ''; $general->Weight = new \DHLBook\StructType\TWeight(); $general->Weight->unit = 'kg'; $general->Weight->_ = '1'; $general->Volume = new \DHLBook\StructType\TVolume(); $general->Volume->unit = 'm3'; $general->Volume->_ = ''; $general->Loadingmeter = new \DHLBook\StructType\TLoadingmeter(); $general->Loadingmeter->unit = 'm'; $general->Loadingmeter->_ = ''; $general->NoItems = ''; $general->NoPallets = '2'; $general->PalletPlace = new \DHLBook\StructType\TPalletPlace(); $general->PalletPlace->unit = ''; $general->PalletPlace->_ = ''; $general->ProductCode = '401'; $general->Pickup = new \DHLBook\StructType\TPickup(); $general->Pickup->Address = new \DHLBook\StructType\TAddressSE(); $general->Pickup->Address->Name = 'Gränsfors bruks AB'; $general->Pickup->Address->AddressLine = 'Stationsgatan'; $general->Pickup->Address->PostCode = '82077'; $general->Pickup->Address->City = 'Gnarp'; $general->Delivery = new \DHLBook\StructType\TDelivery(); $general->Delivery->Address = new \DHLBook\StructType\TAddressGeneric(); $general->Delivery->Address->Name = 'Testkund'; $general->Delivery->Address->AddressLine = 'Testgatan'; $general->Delivery->Address->PostCode = '56432'; $general->Delivery->Address->City = 'Bankeryd'; $tbook = new \DHLBook\StructType\TBook( $requestMessageHeader, $general, $gBook = null ); if ( $book->BookPickup( new \DHLBook\StructType\BookPickup( $credentials, $tbook ) ) !== false ) { print_r( $book->getResult() ); } else { print_r( $book->getLastError() ); }
安全
通过基本身份验证对Web服务进行限制。用户名和密码作为HTTP请求体的一部分发送。