什么是 spreedly-client
spreedly-client 是一个适用于 Node.js 和浏览器的 npm 包,提供了方便的访问 Spreedly 平台的 API 的接口。Spreedly 是一个支付集成平台,旨在为开发者和企业提供简单易用的支付解决方案,减少集成和维护成本。
spreedly-client 提供了封装的 API,可以方便的创建、更新、删除支付令牌,以及调用 Spreedly 的各种 PHP 和 Ruby API。
如何安装
npm install --save spreedly-client
或
yarn add spreedly-client
如何使用
初始化
在使用 spreedly-client 前,需要先进行初始化。在初始化时需要传入 Spreedly 的环境密钥和 AMD 服务。
const SpreedlyClient = require('spreedly-client'); const client = new SpreedlyClient({ secretKey: 'YOUR_SECRET_KEY', serviceUrl: 'https://core.spreedly.com/v1', });
YOUR_SECRET_KEY
是您的 Spreedly 环境密钥,在 Spreedly 控制台中可以找到。
获取令牌信息
接下来,我们使用 Spreedly 提供的 API 获取一个支付令牌,使用 spreedly-client 可以快速实现。
-- -------------------- ---- ------- ----- ----- - ----- --------------------------- ----------- ------- ---------- ------- ------- ------------------- ------ ---- ----- ------- ------------------- ------ --- -------------------
这里我们调用了 spreedly-client 的 tokenizeCreditCard
方法,传入了信用卡信息,并返回了一个令牌对象。
我们可以打印出该令牌对象,可以看到如下内容:
-- -------------------- ---- ------- - -------------- --------------- -------------------------------------- ---------------------------------------- ---------------------------------------- ------------------ ------------------------------ ----------------- -------------------- -------------------------- ------------------------------ ------------------------------- ---------------------------------------- ------------ --------------- -------------------- ---------------- ------------------- ---------------- ------------------- ----------------------- ------- ------- ------- -- --------------------------- ------- ------- -------- ---------------------- -------------- ------------ ------------------------------------------------------------------------------- --------------- ------------ -- --------------- -------------------- ------------------- ---------- ------------ ------------- ---------------- ---------------- ------------ ------------- ----------- --------------- ----------------- ------ -------------------- --------------- ---------------------------------- -------------- ---------------------------------- ------------------------------------- -- ------------------------- --------------------------------------------------- --------------------------- ------------------------------------- ----------------------------------------------------- ---------------------- ------------------------ ------------------------------------------ ---------------------------------------- --------------------------------- ---------------------------------------------- ------------------------------------- ---------------------------------------------- ---------- ----------------- ------------------------- ------------------- ------------------- -------------------------------------- ---------------- -------------------- ------------- ----------------------------------- ---- ---- ----- -- ----------------- -------------------------------------- ---------------------------------------- ---------------------------------------- ------------- -------- -------------------------- --------------------- --------------------------- -- ------------------------- ------------ -------------- ------------- - -
可以看到令牌对象包含了很多信息,包括令牌、支付信息、令牌信息等。
获取网关配置信息
使用 spreedly-client 可以轻松获取 Spreedly 当前支持的所有网关信息。
const gateways = await client.listAllGateways(); console.log(gateways);
这里我们调用了 spreedly-client 的 listAllGateways
方法,并打印了返回的网关信息。你可以得到网关的详细信息,包括名称、类型、支持支付方式等。
-- -------------------- ---- ------- - - -------- ------------------------------- ------- -------------- ---- --------- ----------- --- -------------- --- -------------- ----- -------- ----------- ------- ---------- --------------- ------- ----------- ------ ------------------ - ---------- -- ------------------ - ------------- -- ------------------------- - - ------- -------------- ----------- - ------------ ----------- ----------------------- --------------------- ----------------- ------- -------- --------------------------- -------- - - -- ------------------ - ------------ ----------- ------- ----------------------- --------------------------- --------------------- ------------------ -------- ----------------- ----------------- --------------------- -------------------- --------- ------------ -------------------- -- ---------------- ----- -- -------- -
执行支付
接下来,我们使用 spreedly-client 提供的 purchase
方法进行支付。
const purchaseResult = await client.purchase({ amount: 1000, currency_code: 'USD', payment_method_token: token.paymentMethod.token, gateway_token: gateways[0].token, }); console.log(purchaseResult);
这里我们传入了支付金额、货币代码、支付令牌和网关信息,并返回了购买结果对象。
你可以打印出购买结果信息,能看到如下内容:
-- -------------------- ---- ------- - --------------- -------------------------------------- ---------------------------------------- ---------------------------------------- ----------------- ------------------------------ ----------------- -------------------- -------------------------------------- --------------------------------------- ------------------------------- ---------------------------------------- ------------ --------------- -------------------- --------------- --------------------- ------- --- ------ ---- -------- --------------- ---------------------- ---------------------- ---------- -- -------------------------- ----------- ---------------------- -------------- ------------ ------------------------------------------------------------------------------- --------------- ------------ -- --------------- -------------------- ------------------- ---------- ------------ ------------- ---------------- ---------------- ------------ ------------- ----------- --------------- ----------------- ------ -------------------- --------------- ---------------------------------- -------------- ---------------------------------- ------------------------------------- -- ------------------------- --------------------------------------------------- --------------------------- ------------------------------------- ----------------------------------------------------- ---------------------- ------------------------ ------------------------------------------ ---------------------------------------- --------------------------------- ---------------------------------------------- ------------------------------------- ---------------------------------------------- ---------- ----------------- ------------------------- ------------------- ------------------- -------------------------------------- ---------------- -------------------- ------------- ----------------------------------- ---- ---- ----- -- --------------- ---------------------- ----------- --------------------------------------------- -
获取已创建的支付令牌
使用 spreedly-client 可以很容易地获取已创建的支付令牌信息。
const paymentMethod = await client.getPaymentMethod(token.paymentMethod.token); console.log(paymentMethod);
这里我们调用了 spreedly-client 的 getPaymentMethod
方法,传入了支付令牌,返回该令牌信息。
你可以打印出该支付令牌的详细信息:
-- -------------------- ---- ------- - -------------------------------------- ---------------------------------------- ---------------------------------------- ------------- -------- -------------------------- --------------------- --------------------------- -- ------------------------- ------------ -------------- ------------- -
删除支付令牌
最后,我们可以通过调用 spreedly-client 提供的 deletePaymentMethod
方法来删除已创建的支付令牌。
const result = await client.deletePaymentMethod(token.paymentMethod.token); console.log(result);
这里我们调用了 spreedly-client 的 deletePaymentMethod
方法,传入了支付令牌,返回了删除结果对象。
你可以打印出该对象,应该可以看到如下内容:
{ success: true, message: 'Payment method deleted.', }
结语
本文介绍了如何使用 spreedly-client 这个 npm 包,通过这个包可以快速简单地访问 Spreedly 平台的各种 API,实现支付功能,并获取支付信息。通过本文的学习,您应该能够快速上手,并按需自定义开发支付功能。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600670a68ccae46eb111f23a