令牌集成帮助

快速集成

  1. 安装依赖:
    go get -u git.mazhangjing.com/corkine/cls-client
    
  2. 在代码中引用:
    import "git.mazhangjing.com/corkine/cls-client/cls"
    

数据同步指南

CloudLiteSync 支持 SQLite 数据库备份和初始化环境自动恢复。

package main
import (
    "time"
    "git.mazhangjing.com/corkine/cls-client/token"
)

func main() {
    service := token.NewCLSDataService(
        "https://xxx.yyy.com/api/appName", 
        "TQ2A71GSF3DNJ1I5SL4HVREOEQYLIO44", 
        "data/app.db")
    err := service.DownloadLatestDB()
    err = service.UploadDB("Backup at" + time.Now().Format("2006-01-02 15:04:05"))
}

令牌使用指南

CloudLiteSync 支持基于 JWTJSON Web Token的令牌鉴权机制。每个令牌项目拥有独立的 RSA 公私钥对,支持灵活的权限与用途隔离。

package main

import (
    "fmt"
    "git.mazhangjing.com/corkine/cls-client/cls"
)

func main() {
    // 假设 publicKeyPEM、matchPurpose、remoteServer 已获取
    service := cls.NewCLSAuthService(publicKeyPEM, matchPurpose, remoteServer)

    // 1. 使用 JWT Token 进行本地校验
    claims, err := service.JwtAuth(tokenString)
    if err != nil {
        fmt.Println("JWT 校验失败:", err)
        return
    }
    fmt.Println("用户信息:", claims.Username, claims.Role)

    // 2. 使用 quickKey 远程换取并校验 Token
    claims2, err := service.TokenAuth(quickKey)
    if err != nil {
        fmt.Println("Token 校验失败:", err)
        return
    }
    fmt.Println("用户信息:", claims2.Username, claims2.Role)
}
Description
CloudLiteSync Go Client
Readme 36 KiB
Languages
Go 100%