Embedded SDK
官方 SDK 将服务端凭据与终端访问明确分开。版本和安装命令以对应软件包的发布说明为准。
| 平台 | App 后端 | 终端自助服务 | 数据 API | 令牌接口 |
|---|---|---|---|---|
| TypeScript | ServerClient | EmbeddedClient | GatewayClient | TokenProvider |
| Swift | CreditPlatformServerClient | CreditPlatformEmbeddedClient | CreditPlatformGatewayClient | CreditPlatformTokenStore |
| Kotlin | CreditPlatformServerClient | CreditPlatformEmbeddedClient | CreditPlatformGatewayClient | TokenStore |
TypeScript
ts
const embedded = new EmbeddedClient({
baseUrl,
applicationCode: 'my_app',
tokenProvider,
})
const wallet = await embedded.getWallet()ServerClient 只能打包到可信 App 后端。浏览器或共享前端包只使用调用方提供的 TokenProvider。
Swift
swift
let client = try CreditPlatformEmbeddedClient(
baseURL: baseURL,
applicationCode: "my_app",
tokenStore: keychainTokenStore
)
let wallet = try await client.getWallet()在 iOS 中用 Keychain 支撑 CreditPlatformTokenStore,不要把 AppClient secret 放进 App 包。
Kotlin
kotlin
val client = CreditPlatformEmbeddedClient(
baseUrl,
"my_app",
keystoreBackedTokenStore
)
val wallet = client.getWallet()在 Android 中用 Keystore 支撑 TokenStore。所有平台都应把 Application code 固定在客户端构造参数中,不允许业务调用方临时传入其他应用或用户 ID。
SDK 抛出的错误只应包含 HTTP 状态与安全错误码。不要在二次封装时附加完整响应、请求正文或凭据。