merch-one/php-api-sdk

MerchOne API集成SDK

1.0.4 2023-04-14 15:35 UTC

This package is auto-updated.

Last update: 2024-09-14 18:42:21 UTC


README

MerchOne API集成PHP SDK

Packagist Version License Minimum PHP version GitHub last commit

本包提供一系列工具,使开发者能够轻松集成MerchOne API。

安装

composer require merch-one/php-api-sdk

概述

简介

客户端提供3种不同的API以进行交互。

  • 目录API
  • 订单API
  • 配送API

要获取可用端点的列表,请查看MerchOne API文档

基本用法

创建一个MerchOne\PhpApiSdk\Http\Client实例

use MerchOne\PhpApiSdk\Http\Client;

class MyService
 {
    private Client $httpClient;
 
    public function __construct()
    {
        $this->httpClient = new Client();
    }
 
    public function doSomething(): void
     {
        // authenticate client using credentials
        $this->httpClient->auth(
            'your-store-user',
            'your-store-key'
        );
        
        // or authenticate client using base64 encoded credentials
        $this->httpClient->basicAuth(
            base64_encode('your-store-user:your-store-key'),
        );
        
        /* Interact with Catalog API */
        /** @var \MerchOne\PhpApiSdk\Contracts\Clients\CatalogApi $catalogApi */
        $catalogApi = $this->httpClient->catalog();
        
        /* Interact with Orders API */
        /** @var \MerchOne\PhpApiSdk\Contracts\Clients\OrdersApi $ordersApi */
        $ordersApi = $this->httpClient->orders();
        
        /* Interact with Shipping API */
        /** @var \MerchOne\PhpApiSdk\Contracts\Clients\ShippingApi $shippingApi */
        $shippingApi = $this->httpClient->shipping();
        
        // switch API version you interact with
        $this->httpClient->setVersion($version);
        
        // get current API version
        $this->httpClient->getVersion();
    }
}
  • Client类接受两个参数
    • $version - 要交互的API版本。默认值为beta
    • $clientOptions - 请求中使用的自定义选项。
      • 请参阅Guzzle文档以获取可用选项。
      • 无法覆盖的头部:User-AgentAcceptContent-Type以及http_error属性!

辅助工具

use MerchOne\PhpApiSdk\Util\MerchOneApi;

// get the list of all available API versions
MerchOneApi::getVersions();
  • MerchOne\PhpSdk\Util\OrderStatus提供了完整的订单状态列表。

更多信息请查看MerchOne API文档

异常

该包可能会抛出以下异常

测试

该包包含一组测试,以确保一切按预期工作。要运行测试,请执行以下命令

./vendor/bin/phpunit