DokuWalletSDK 1.0.0

DokuWalletSDK 1.0.0

DOKU 维护。



  • DOKU

Doku 钱包 SDK

Doku 钱包 SDK 是一个旨在方便连接到 DOKU 钱包 API 终端的 SDK。

特性

  • 简化 API 连接。
  • 同时支持 CocoaPods 和 Swift Package Manager (SPM)。

要求

  • iOS 11.4 或更高版本。

安装

CocoaPods

要使用CocoaPods将Wallet SDK集成到您的Xcode项目中,请在Podfile中指定它

pod 'DokuWalletSDK', '~> 1.0.0'

然后,在终端中运行以下命令

pod install

Swift Package Manager

要使用Swift Package Manager将Wallet SDK添加到您的Xcode项目中,请将以下内容添加到Package.swift文件下的dependencies

.package(url: "https://github.com/PTNUSASATUINTIARTHA-DOKU/doku-wallet-ios-sdk.git", .upToNextMajor(from: "1.0.0"))

或者,您可以通过以下步骤在Xcode UI中添加Doku Wallet SDK:前往

文件 -> Swift Packages -> 添加依赖...

并输入仓库URL

https://github.com/PTNUSASATUINTIARTHA-DOKU/doku-wallet-ios-sdk.git

使用

首先,在您的文件中导入Wallet SDK

import DokuWalletSDK

函数调用示例

要调用如getTokenB2B这样的函数,请使用以下语法。此函数检索数据,并以自定义的Codable结构体或错误的形式返回响应。

Wallet.sharedInstance.getTokenB2B(headers: headers, parameters: parameters) { result in
    switch result {
    case .success(let response):
        print("Success: \(response)")
    case .failure(let error):
        print("Error: \(error)")
    }
}

理解响应

每个函数都返回一个唯一的响应类型。例如,getTokenB2B返回类型为GetTokenB2BResponse的响应,其中包含accessToken、expiresIn等多个字段。

public struct GetTokenB2BResponse: Codable {
    public var accessToken: String?
    public var tokenType: String?
    public var expiresIn: Int?
    public var additionalInfo: String?
    public var responseCode: String?
    public var responseMessage: String?
}

处理错误

SDK使用自定义的WalletError枚举来表示错误。这个枚举包含各种情况,如apiError和networkError,提供有关错误的详细信息。

public enum WalletError: Error {
    case apiError(responseCode: String, responseMessage: String, originalError: Error)
    case networkError(type: NetworkErrorType, originalError: Error? = nil)
    
    // Detailed categorization of network errors
    public enum NetworkErrorType: String, Decodable {
        case noConnection = "No internet connection"
        case clientError400 = "Client error (400)"
        case serverError500 = "Internal server error (500)"
        case noData = "No data"
        case unknownError = "Unknown error"
        case decodingError = "Decoding error"
    }
}

处理错误时,您可以根据WalletError获取失败的详细信息,包括HTTP响应代码、消息以及可能的底层错误。

完整文档

请参阅完整文档以获取关于其他函数及其唯一响应类型的详细信息。本指南仅涵盖一般使用模式和错误处理。对于更全面的示例和高级使用,请查阅API文档和示例项目。