Files
TermiNexus a8574763c0 feat(subscription): 新增订阅式软件提供方 SDK 客户端与令牌
新增 gvsdsdk.subscription:提供者子服务器用「软件 ApiKey+密钥」换取访问令牌(SubscriptionClient.FetchToken/EnsureToken/Request,仅依赖 urllib),并与主服务器一致的令牌签发/自省(IssueSubscriptionToken/IntrospectSubscriptionToken,自包含 HMAC-SHA256,typ=subscription_provider)。
2026-10-05 11:29:08 +08:00

31 lines
1.1 KiB
Python

"""gvsdsdk.subscription —— 订阅式软件提供方 SDK
提供者子服务器侧用它把「软件的 API Key + 密钥」换成访问令牌,并携带令牌调用主服务器接口:
from gvsdsdk.subscription import SubscriptionClient
client = SubscriptionClient(MasterURL='https://gerp.gvsds.com',
ApiKey='sk_xxx', Secret='一次性展示的密钥')
client.FetchToken() # 换取访问令牌(内存缓存,过期自动重取)
client.Request('GET', '/API/Subscription/Provider/Ping')
服务端侧用 tokens 模块签发与自省令牌(纯 HMAC,无数据库依赖)。
"""
from gvsdsdk.subscription.client import SubscriptionClient, SubscriptionClientError
from gvsdsdk.subscription.tokens import (
SUBSCRIPTION_TOKEN_TTL_HOURS,
SUBSCRIPTION_TOKEN_TYPE,
IntrospectSubscriptionToken,
IssueSubscriptionToken,
)
__all__ = [
'SubscriptionClient',
'SubscriptionClientError',
'IssueSubscriptionToken',
'IntrospectSubscriptionToken',
'SUBSCRIPTION_TOKEN_TYPE',
'SUBSCRIPTION_TOKEN_TTL_HOURS',
]