maxkut / tourvisor
与tourvisor.ru的集成
v0.4.4
2019-06-18 08:35 UTC
Requires
- php: ^7.1.3
- ext-json: ^1.6
- guzzlehttp/guzzle: ~6.0
- illuminate/support: ^5.5
Requires (Dev)
- symfony/var-dumper: ^4.1
README
PHP包装,用于操作tourvisor.ru的API
API文档位于磁盘上。
库仍在开发中。请随时创建issue
安装
使用composer
在项目中安装
$ composer require maxkut/tourvisor
最小系统要求:php: ^7.1.3
使用
使用库的逻辑很简单 - 创建一个带有http客户端的核心库对象,该客户端具有getResults
方法,该方法接受一个参数,即来自Tourvisor\Requests
的请求对象。每个请求类都有一个docBlock,其中描述了可以传递到请求中的参数。
use Tourvisor\Tourvisor; use Tourvisor\Client; // создаем объект ядра библиотеки с http клиентом $tourvisor = new Tourvisor(new Client('login-in@tourvisor.ru', 'password')); // ...
创建搜索请求
use Tourvisor\Requests\SearchRequest; // ... $tourvisor ... $searchRequest = new SearchRequest(); $searchRequest->country = 30; $searchRequest->departure = 1; // остальные параметры можно узнать в docBlock класса запроса $result = $tourvisor->getResult($searchRequest); // В ответ придет идентификатор запроса, например 1015951847
获取搜索请求的结果
use Tourvisor\Requests\SearchResultRequest; // ... $tourvisor ... $searchResultRequest = new SearchResultRequest(); // передаем обязательный параметр - идентификатор запроса $searchResultRequest->requestid = 1015951847; $result = $tourvisor->getResult($searchResultRequest);
集成
Laravel >= 5.5
库使用自动注册服务提供者。
在使用前,请将两个变量添加到.env
文件中
TOURVISOR_LOGIN="login-in@tourvisor.ru"
TOURVISOR_PASSWORD="password"
在控制器中使用服务
/** * @param \Tourvisor\Tourvisor $tourvisor * @param \Tourvisor\Requests\HotToursRequest $hotToursRequest * @throws \Tourvisor\Exceptions\AuthorizeException * @throws \Tourvisor\Exceptions\HasEmptyRequiredParamsException * @throws \Tourvisor\Exceptions\ResponseException */ public function index(\Tourvisor\Tourvisor $tourvisor, \Tourvisor\Requests\HotToursRequest $hotToursRequest) { $hotToursRequest->items = 10; $hotToursRequest->city = 1; $result = $tourvisor->getResult($hotToursRequest); return response($result); }
或者可以通过服务容器在任何位置提取服务
$tourvisor = app('tourvisor'); // или $tourvisor = app()->make('tourvisor');
或者使用Tourvisor
门面
// ... сформировали $searchRequest $result = \Tourvisor::getResult($searchRequest);
开发帮助
- 在自己的账户上fork
- 编辑
- pull-request