zohaib-vaival / php-cartzy
Cartzy API 的 PHP SDK
2.0.2
2021-01-22 11:05 UTC
Requires
- php: >=7.1
- ext-curl: *
- ext-json: *
Requires (Dev)
- phpunit/phpunit: ^5.5
README
PHPCartzy 是 Cartzy API 的简单 SDK 实现。它帮助以面向对象的方式访问 API。
安装
使用 Composer 安装
composer require zohaib-vaival/php-cartzy
要求
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(第五个参数)设置为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();