luigel / laravel5-amazon-mws
使用Laravel与亚马逊的MWS网络服务。基于creacoon/amazon-mws-laravel包,并修改以兼容最新的Laravel版本(+错误修复)。
v1.1.8
2021-02-19 00:37 UTC
Requires
- php: ^7.0|^7.2|^7.3|^7.4
- ext-curl: *
- illuminate/support: 5.*|^6.0|^7.0
Requires (Dev)
- phpunit/phpunit: ^5.0|^6.0|^8.0
This package is auto-updated.
Last update: 2024-09-04 06:16:25 UTC
README
一个PHP包,以面向对象的方式连接到亚马逊的商家网络服务(MWS),注重直观的使用。
目前优化以适应Laravel框架。
这不是用于亚马逊网络服务(AWS)-云计算服务。
安装
-
composer require luigel/laravel5-amazon-mws -
将服务提供者添加到config/app.php中的providers数组
Luigel\AmazonMws\ServiceProvider::class,
config/app.php中无需添加门面
- 将src/config/amazon-mws.php配置文件从src/config复制到Laravel的配置目录。
使用方法
API所需的所有技术细节都由后台处理,因此用户可以轻松构建发送请求到亚马逊的代码,无需跳过参数URL格式化和令牌管理等障碍。使用其中一个对象的通用工作流程如下
- 创建一个用于执行所需任务的对象。
- 使用set____方法根据对象加载参数。
- 将请求提交给亚马逊。用于此的操作通常命名为fetch____或submit____,且没有参数。
- 使用get____方法引用返回的数据,无论是单个值还是批量。
- 使用内置的日志系统监控库的性能。
请注意,如果您要操作多个亚马逊商店,您将需要为每个商店创建一个单独的对象。
此外,请注意,对象在被视为不可重用时性能最佳。否则,如果新的请求失败,您可能会抓取旧响应数据。
示例用法
以下是库的使用示例。API所需的所有技术细节都由后台处理,因此用户可以轻松构建发送请求到亚马逊的代码,无需跳过参数URL格式化和令牌管理等障碍。
以下是一个函数示例,用于获取过去24小时内更新的所有亚马逊仓库履行的订单
use Luigel\AmazonMws\AmazonOrderList; function getAmazonOrders() { $amz = new AmazonOrderList("myStore"); //store name matches the array key in the config file $amz->setLimits('Modified', "- 24 hours"); $amz->setFulfillmentChannelFilter("MFN"); //no Amazon-fulfilled orders $amz->setOrderStatusFilter( array("Unshipped", "PartiallyShipped", "Canceled", "Unfulfillable") ); //no shipped or pending $amz->setUseToken(); //Amazon sends orders 100 at a time, but we want them all $amz->fetchOrders(); return $amz->getList(); }
此示例展示了用于将先前创建的XML馈送发送到亚马逊以更新库存编号的函数
use Luigel\AmazonMws\AmazonOrderList; function sendInventoryFeed($feed) { $amz = new AmazonFeed("myStore"); //store name matches the array key in the config file $amz->setFeedType("_POST_INVENTORY_AVAILABILITY_DATA_"); //feed types listed in documentation $amz->setFeedContent($feed); $amz->submitFeed(); return $amz->getResponse(); }