arfan-vaival / cartzy-wheelify
轮化 Cartzy API 的 PHP SDK
1.0.1
2021-04-14 07:17 UTC
Requires
- php: >=7.1
- ext-curl: *
- ext-json: *
Requires (Dev)
- phpunit/phpunit: ^5.5
README
PHPCartzy 是 Cartzy API 的简单 SDK 实现。它帮助以面向对象的方式访问 API。
安装
使用 Composer 安装
composer require arfan-vaival/cartzy-wheelify
要求
PHPCartzy 使用 curl 扩展来处理 HTTP 调用。因此,您需要安装并启用 PHP 中的 curl 扩展。
然而,如果您更喜欢使用任何其他可用的 HTTP 调用包库,您可以通过修改
PHPCartzy\HttpRequestJson
类中的每个get()
、post()
、put()
、delete()
方法中的一行来实现。
使用方法
您可以使用 PHPCartzy 以非常简单的面向对象的方式。
配置 CartzySDK
如果您正在使用自己的私有 API,请提供 ApiKey 和密码。
$config = array( 'ShopUrl' => 'yourshop.cartzy.com', 'ApiKey' => '***YOUR-PRIVATE-API-KEY***', 'Password' => '***YOUR-PRIVATE-API-PASSWORD***', ); PHPCartzy\CartzySDK::config($config);
对于第三方应用,请使用永久访问令牌。
$config = array( 'ShopUrl' => 'yourshop.cartzy.com', 'AccessToken' => '***ACCESS-TOKEN-FOR-THIRD-PARTY-APP***', ); PHPCartzy\CartzySDK::config($config);
如何获取商店的永久访问令牌?
有一个 AuthHelper 类可以帮助您使用 OAuth 从商店获取永久访问令牌。
- 首先,您需要使用额外的参数 SharedSecret 配置 SDK
$config = array( 'ShopUrl' => 'yourshop.cartzy.com', 'ApiKey' => '***YOUR-PRIVATE-API-KEY***', 'SharedSecret' => '***YOUR-SHARED-SECRET***', ); PHPCartzy\CartzySDK::config($config);
- 创建身份验证请求
重定向 URL 必须由您的应用管理员列为 应用程序重定向 URL 之一。
//your_authorize_url.php $scopes = 'read_products,write_products,read_script_tags,write_script_tags'; //This is also valid //$scopes = array('read_products','write_products','read_script_tags', 'write_script_tags'); $redirectUrl = 'https://yourappurl.com/your_redirect_url.php'; \PHPCartzy\AuthHelper::createAuthRequest($scopes, $redirectUrl);
如果您想函数返回身份验证 URL 而不是自动重定向,可以将参数
$return
(第 5 个参数)设置为true
。
\PHPCartzy\AuthHelper::createAuthRequest($scopes, $redirectUrl, null, null, true);
- 在应用程序授权后重定向到
$redirectUrl
时获取访问令牌。
//your_redirect_url.php PHPCartzy\CartzySDK::config($config); $accessToken = \PHPCartzy\AuthHelper::getAccessToken(); //Now store it in database or somewhere else
您可以使用相同的页面来创建请求和获取访问令牌(重定向 URL)。在这种情况下,只需在调用
createAuthRequest()
方法时跳过第二个参数$redirectUrl
。AuthHelper 类将为您完成剩余的工作。
//your_authorize_and_redirect_url.php PHPCartzy\CartzySDK::config($config); $accessToken = \PHPCartzy\AuthHelper::createAuthRequest($scopes); //Now store it in database or somewhere else
获取 CartzySDK 对象
$Cartzy = new PHPCartzy\CartzySDK;
您可以在实例化对象时提供配置作为参数(如果尚未通过调用 config()
方法进行配置)
$Cartzy = new PHPCartzy\CartzySDK($config);
折扣码
您可以获取在商店管理员中创建的折扣码列表。
$config = array( 'ClientID' => '***CLIENT-ID-FOR-THIRD-PARTY-APP***', 'ShopUrl' => 'yourshop.cartzy.com', 'AccessToken' => '***ACCESS-TOKEN-FOR-THIRD-PARTY-APP***', ); PHPCartzy\CartzySDK::config($config); $discountCode = new PHPCartzy\Discount\DiscountCode(); $resp = $discountCode->get();