alopeyk / alopeyk-api-laravel
Laravel 5.* 集成 AloPeyk RESTful API
Requires
README
此包旨在方便开发适用于AloPeyk RESTful API的应用程序。有关此API的更多信息,请访问AloPeyk 文档
⚠️ 使用 v1.0.7 版本与 Laravel 5 集成
安装
首先,您需要一个 ACCESS-TOKEN。所有Alopeyk API端点都支持JWT身份验证协议。要开始发送经过身份验证的HTTP请求,您需要使用发送给您的JWT授权令牌。然后,您可以使用以下命令使用Composer安装此包:
composer require alopeyk/alopeyk-api-laravel
到Packagist的链接: https://packagist.org.cn/packages/alopeyk/alopeyk-api-laravel
安装此包需要
- Laravel 7+
通过Composer安装,编辑您的composer.json以要求此包。
"require": {
"alopeyk/alopeyk-api-laravel": "2.*"
}
然后,在终端中运行 composer update
以获取它。
完成后,您需要将服务提供者添加到app.php配置中的providers数组中,如下所示
AloPeyk\Api\RESTful\Provider\AloPeykServiceProvider::class
接下来,在app.php配置文件中,在aliases数组下,您可能还想添加JWTAuth外观。
'AloPeykApiHandler' => AloPeyk\Api\RESTful\Facade\AloPeykApiHandlerFacade::class,
最后,您可以使用以下命令发布配置:
$ php artisan vendor:publish --tag=alopeyk
使用方法
<?php namespace App\Http\Controllers; use AloPeyk\Api\RESTful\Model\Address; use AloPeyk\Api\RESTful\Model\Location; use AloPeyk\Api\RESTful\Model\Order; use AloPeykApiHandler; class TestController extends Controller { public function authenticate() { dd(AloPeykApiHandler::authenticate()); } public function getLocation() { dd(Location::getAddress("35.732595", "51.413379")); } public function locSuggestion() { dd(Location::getSuggestions("آرژ")); } public function getPrice() { /* * Create Origin Address */ $origin = new Address('origin', 'tehran', '35.723711', '51.410547'); /* * Create First Destination */ $firstDest = new Address('destination', 'tehran', '35.728457', '51.436969'); /* * Create Second Destination */ $secondDest = new Address('destination', 'tehran', '35.729379', '51.418151'); /* * Create New Order */ $order = new Order('motor_taxi', $origin, [$firstDest, $secondDest]); $order->setHasReturn(true); $apiResponse = $order->getPrice(); dd($apiResponse); } public function createOrder() { /* * Create Origin: Behjat Abad */ $origin = new Address('origin', 'tehran', '35.755460', '51.416874'); $origin->setAddress("... Behjat Abad, Tehran"); $origin->setDescription("Behjat Abad"); // optional $origin->setUnit("44"); // optional $origin->setNumber("1"); // optional $origin->setPersonFullname("Leonardo DiCaprio"); // optional $origin->setPersonPhone("09370000000"); // optional /* * Create First Destination: N Sohrevardi Ave */ $firstDest = new Address('destination', 'tehran', '35.758495', '51.442550'); $firstDest->setAddress("... N Sohrevardi Ave, Tehran"); $firstDest->setDescription("N Sohrevardi Ave"); // optional $firstDest->setUnit("55"); // optional $firstDest->setNumber("2"); // optional $firstDest->setPersonFullname("Eddie Redmayne"); // optional $firstDest->setPersonPhone("09380000000"); // optional /* * Create Second Destination: Ahmad Qasir Bokharest St */ $secondDest = new Address('destination', 'tehran', '35.895452', '51.589632'); $secondDest->setAddress("... Ahmad Qasir Bokharest St, Tehran"); $secondDest->setDescription("Ahmad Qasir Bokharest St"); // optional $secondDest->setUnit("66"); // optional $secondDest->setNumber("3"); // optional $secondDest->setPersonFullname("Matt Damon"); // optional $secondDest->setPersonPhone("09390000000"); // optional $order = new Order('motor_taxi', $origin, [$firstDest, $secondDest]); $order->setHasReturn(true); $apiResponse = $order->create($order); dd($apiResponse); } public function getOrderDetails() { // $orderID = " 352 "; // works fine as 300 // $orderID = " 352<p>"; // works fine as 300 // $orderID = ''; // throws AloPeykException // $orderID = null; // throws AloPeykException $orderID = 352; $apiResponse = Order::getDetails($orderID); dd($apiResponse); } public function cancelOrder() { $apiResponse = null; // $orderID = " 300 "; // works fine as 300 // $orderID = " 300<p>"; // works fine as 300 // $orderID = ''; // throws AloPeykException // $orderID = null; // throws AloPeykException $orderID = 353; $apiResponse = Order::cancel($orderID); dd($apiResponse); } }
许可
此包在 MIT 许可证 下发布。
版权所有 (c) 2012-2017 Markus Poerschke
特此授予任何获得此软件及其相关文档文件(“软件”)副本的任何人免费使用该软件的权利,不受任何限制,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或出售软件副本的权利,并允许获得软件的人进行此类操作,前提是遵守以下条件
上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。
软件按“现状”提供,不提供任何明示或暗示的保证,包括但不限于对适销性、适用于特定目的和无侵犯性的保证。在任何情况下,作者或版权持有人均不对任何索赔、损害或其他责任负责,无论该责任基于合同、侵权或其他方式,无论该责任源于、源于或与软件或使用或以其他方式处理软件有关。