dhl / sdk-api-location-finder
DHL 提货/投递地点搜索
1.0.0
2020-01-27 14:11 UTC
Requires (Dev)
- ext-simplexml: *
- phpstan/phpstan: ^0.9.0
- phpunit/phpunit: ^6.0.0
- squizlabs/php_codesniffer: ^3.4
This package is auto-updated.
Last update: 2024-08-28 20:22:44 UTC
README
DHL 地点查找 API SDK 包提供了对 DHL Standortsuche 的接口。使用此 SDK,您可以获取指定地址或一组坐标周围的 DHL 包裹箱、包裹站和邮政局列表。
SDK 当前使用 DHL Standortsuche Deutschland API 来检索位置,尽管这可能在未来的版本中发生变化。您可以在 https://entwickler.dhl.de/group/ep/wsapis/standortsuche 找到 DHL Standortsuche Deutschland API 的开发者文档。
需求
系统要求
- PHP 7.0+ 且带有 SOAP 扩展
包需求
psr/log
: PSR-3 日志接口
开发包需求
phpunit/phpunit
: 测试框架
安装
$ composer require dhl/sdk-api-location-finder
卸载
$ composer remove dhl/sdk-api-location-finder
测试
$ composer update $ ./vendor/bin/phpunit -c test/phpunit.xml
特性
SDK 提供以下服务方法
- getPickUpLocations
- 从指定地址找到 15 公里半径内的提货地点。
- getPickUpLocationsByCoordinate
- 从指定坐标找到 15 公里半径内的提货地点。
- getDropOffLocations
- 从指定地址找到 15 公里半径内的投递地点。
- getDropOffLocationsByCoordinate
- 从指定坐标找到 15 公里半径内的投递地点。
使用示例
$sandboxMode = false; $serviceFactory = new \Dhl\Sdk\LocationFinder\Service\ServiceFactory(); $service = $serviceFactory->createLocationFinderService( 'appId', 'appToken', new \Psr\Log\NullLogger(), $sandboxMode ); try { /** @var \Dhl\Sdk\LocationFinder\Api\Data\LocationInterface $locations */ $locations = $service->getPickUpLocations( 'DE', '04129', 'Leipzig', 'Nonnenstraße', '11d' ); } catch (\Dhl\Sdk\LocationFinder\Exception\ServiceException $e) { // handle errors } foreach ($locations as $location) { echo $location->getName(); echo $location->getType(); echo $location->getLatitude(); echo $location->getLongitude(); // ... }
错误处理
SDK 只会抛出类型为 \Dhl\Sdk\LocationFinder\Exception\ServiceException
的异常。可以用于描述发生的错误类型的 ServiceException
的子类。
\Dhl\Sdk\LocationFinder\Exception\DetailedServiceException
表示异常包含一个适合显示给最终用户的可读错误消息。