PaymentKit SDK 有兩種不同的運作模式:正式模式 (Live Mode) 用於處理真實交易,測試模式 (Test Mode) 用於開發和測試。每個 API 請求都在這兩種環境之一中執行。預設情況下,SDK 會在正式模式下初始化。
在開發過程中,使用測試模式至關重要,這樣可以在不影響正式資料或產生實際費用的情況下,建立並驗證您的整合。
程式化設定
您可以使用 payment.environments 物件上提供的方法,在您的應用程式中動態切換正式模式和測試模式。這是管理環境的建議方法。
設定正式模式
要明確啟用正式模式,請使用 setLivemode 方法。所有後續的 API 呼叫都將被導向生產環境。
Setting Live Mode
import payment from '@blocklet/payment-js';
// 為生產交易啟用正式模式
payment.environments.setLivemode(true);設定 setLivemode(false) 等同於啟用測試模式。
設定測試模式
要啟用用於開發的測試模式,請使用 setTestmode 方法。這可確保所有 API 呼叫都在沙盒環境中執行,不會與您的正式資料互動。
Setting Test Mode
import payment from '@blocklet/payment-js';
// 為開發和測試啟用測試模式
payment.environments.setTestmode(true);設定 setTestmode(false) 等同於啟用正式模式。
檢查目前模式
您可以透過程式碼檢查 SDK 目前設定在哪種模式下運作。
檢查正式模式
getLivemode 方法會在 SDK 目前處於正式模式時回傳 true。
Checking Live Mode
import payment from '@blocklet/payment-js';
const isLive = payment.environments.getLivemode();
console.log(`SDK is in Live Mode: ${isLive}`);
// 預期輸出: SDK is in Live Mode: true檢查測試模式
getTestmode 方法會在 SDK 目前處於測試模式時回傳 true。
Checking Test Mode
import payment from '@blocklet/payment-js';
payment.environments.setTestmode(true);
const isTest = payment.environments.getTestmode();
console.log(`SDK is in Test Mode: ${isTest}`);
// 預期輸出: SDK is in Test Mode: true運作原理
一旦您設定了環境模式,所有後續透過 SDK 發出的 API 呼叫都會在請求中自動包含必要的 livemode 參數。這確保您的請求會被路由到正確的 PaymentKit 環境,而無需在每次呼叫中都指定它。
Example API Call in Test Mode
import payment from '@blocklet/payment-js';
// 確保 SDK 處於測試模式
payment.environments.setTestmode(true);
console.log(`Operating in Test Mode: ${payment.environments.getTestmode()}`);
async function listTestCustomers() {
try {
// 此 API 呼叫將被傳送到測試環境
const customers = await payment.customers.list({ pageSize: 5 });
console.log('Fetched test customers:', customers.data);
} catch (error) {
console.error('Error fetching test customers:', error.message);
}
}
listTestCustomers();妥善管理您的環境是實現安全可靠整合的關鍵步驟。既然您已了解如何設定 SDK,就可以開始實作支付流程了。
接下來,深入了解實作常見支付工作流程的實用指南。