ibrand/laravel-express
Composer 安装命令:
composer require ibrand/laravel-express
包简介
ibrand laravel express
README 文档
README
特点
- 一套写法兼容所有平台
- 简单配置即可灵活增减服务商
- 统一的返回值格式,便于日志与监控
TODO:
支持更多快递信息查询平台
目前平台支持
安装
composer require "ibrand/laravel-express"
低于 Laravel5.5 版本:
config/app.php文件providers数组中添加:
iBrand\Express\ServiceProvider::class
config/app.php 文件aliases数组总 添加:
'Express'=> iBrand\Express\Facade::class
如需自定义配置请执行:
php artisan vendor:publish --provider="iBrand\Express\ServiceProvider"
使用
实现了查询快递信息路由,支持web和api,可以自定义prefix:
'route' => [ 'prefix' => 'express', 'middleware' => ['web'], ], //or 'route' => [ 'prefix' => 'express', 'middleware' => ['api'], ],
GET请求http://your.domain/express/query
参数:no 快递单号
返回结果:
{
"kuaidi100": {
"gateway": "kuaidi100",
"status": "success",
"result": [
{
"time": "2019-01-09 14:16:41",
"ftime": "2019-01-09 14:16:41",
"context": "[长沙市]已签收,感谢使用顺丰,期待再次为您服务"
},
{
"time": "2019-01-09 09:03:41",
"ftime": "2019-01-09 09:03:41",
"context": "[长沙市]收方客户要求自取快件,待自取"
},
{
"time": "2019-01-09 08:44:17",
"ftime": "2019-01-09 08:44:17",
"context": "[长沙市]快件交给周逢平,正在派送途中(联系电话:13017295338)"
},
{
"time": "2019-01-08 16:00:50",
"ftime": "2019-01-08 16:00:50",
"context": "[长沙市]快件到达 【长沙浏阳东沙新村营业点】"
},
{
"time": "2019-01-08 14:28:28",
"ftime": "2019-01-08 14:28:28",
"context": "[长沙市]快件已发车"
},
{
"time": "2019-01-08 14:17:02",
"ftime": "2019-01-08 14:17:02",
"context": "[长沙市]快件在【长沙星沙集散中心】已装车,准备发往 【长沙浏阳东沙新村营业点】"
},
{
"time": "2019-01-08 13:57:56",
"ftime": "2019-01-08 13:57:56",
"context": "[长沙市]快件到达 【长沙星沙集散中心】"
},
{
"time": "2019-01-08 12:51:04",
"ftime": "2019-01-08 12:51:04",
"context": "[长沙市]快件已发车"
},
{
"time": "2019-01-08 11:46:44",
"ftime": "2019-01-08 11:46:44",
"context": "[长沙市]快件在【长沙岳麓银盆岭营业点】已装车,准备发往下一站"
},
{
"time": "2019-01-08 11:00:39",
"ftime": "2019-01-08 11:00:39",
"context": "[长沙市]顺丰速运 已收取快件"
}
]
}
}
你也可以通过使用Facade来查询快递信息
use Express; Express::query(request('no'));
默认使用 default 中的设置来发送,如果你想要覆盖默认的设置。在 query 方法中使用第二个参数即可:
use Express; Express::query((request('no'), ['aliyun']); // 这里的网关配置将会覆盖全局默认,需要在配置文件中配置好相关项
也可以这样:
use Express; Express::query((request('no'), ['aliyun'=>[ 'app_key' => '', 'app_secret' => '', 'app_code' => '', ]]);
查询网关
默认使用 default 中的设置来发送,如果你想要覆盖默认的设置。在 query 方法中使用第二个参数即可:
use Express; $number = '810597623758'; Express::query($number, ['kuaidi100']); // 这里的网关配置将会覆盖全局默认值
返回值
由于使用多网关发送,所以返回值为一个数组,结构如下:
[
'kuaidi100' => [
'gateway' => 'kuaidi100',
'status' => 'success',
'result' => [...] // 平台返回值
],
'aliyun' => [
'gateway' => 'aliyun',
'status' => 'failure',
'exception' => \Exception 对象
],
//...
]
如果所选网关列表均发送失败时,将会抛出 \Exception 异常,你可以使用 $e->results 获取发送结果。
各平台配置说明
快递100
'kuaidi100' => [ 'key' => '', 'customer' => '', 'secret' => '', 'sms_user_id' => '' ],
ibrand/laravel-express 适用场景与选型建议
ibrand/laravel-express 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 3.62k 次下载、GitHub Stars 达 9, 最近一次更新时间为 2019 年 01 月 15 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「laravel」 「express」 「ibrand」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 ibrand/laravel-express 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 ibrand/laravel-express 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 ibrand/laravel-express 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Laravel >=5.6 integration for the PHP Credit Cards package that allows to perform operations on debit and credit cards like format, validate brand, number and Luhn algorithm.
Rich payment solutions for Yii framework. Paypal, payex, authorize.net, be2bill, omnipay, recurring paymens, instant notifications and many more
iBrand coterie server.
A flexible and awesome shipment tracking library for several carriers like DHL eCommerce, USPS, YanWen Express, Epacket, E包裹, E特快, 国际EMS, 快递100
Rich payment solutions for Laravel framework. Paypal, payex, authorize.net, be2bill, omnipay, recurring paymens, instant notifications and many more
ibrand aliyun mail
统计信息
- 总下载量: 3.62k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 9
- 点击次数: 9
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2019-01-15