跳转到主要内容

Picket API(https://picketapi.com/)的官方Python库

项目描述

picket-python

Picket API提供的官方Python库

安装

pip install -U picketapi

使用 - 快速入门

使用Picket类创建Picket API客户端。它需要一个秘密API密钥作为参数。

from picketapi import Picket

picket = new Picket("YOU_SECRET_API_KEY")

随机数

nonce是由Picket API为用户生成的随机值,用户必须签名以证明对钱包地址的所有权。可以使用nonce函数实现自己的钱包身份验证流程。

nonce对每个项目和钱包地址是唯一的。如果该项目没有钱包地址的nonce,Picket将生成一个新的nonce;否则,Picket将返回现有的nonce。一个nonce在自毁前有效期为两分钟。

resp = picket.nonce(chain="solana", wallet_address="wAlLetTAdDress")
# resp is of type NonceResponse
print(resp.nonce)

身份验证

auth是服务器端登录的等效物。auth应在受信任的服务器环境中使用。最常用的auth用例是将钱包与现有的应用程序账户关联

resp = picket.auth(chain="ethereum", wallet_address="0x1234567890", signature="abcdefghijklmnop")
# resp is of type AuthResponse
print(resp.user)
print(resp.access_token)

授权(授权)

authz代表授权。与处理认证和授权的auth不同,authz仅处理授权。给定一个已认证用户的访问令牌和授权要求,如果用户获得授权,则authz将成功发出新的访问令牌;如果失败,它将返回4xx HTTP错误代码。

resp = picket.authz(access_token="xxx.yyy.zzz", requirements={ "contractAddress": "0xContract" })
# resp is of type AuthResponse
print(resp.user)
print(resp.access_token)

验证

validate验证访问令牌。validate应在服务器端在信任请求的访问令牌之前调用,或者应手动进行访问令牌验证。通常将访问令牌验证和解码逻辑移动到API端点的共享中间件。如果访问令牌有效,验证返回访问令牌的解码声明。

resp, err := picket.validate(access_token="xxx.yyy.zzz", requirements={"contractAddress": "0xContract", "minTokenBalance": "100"})
# Response is the decoded access token (AuthorizedUser)
print(resp)

验证令牌所有权

如果您只想针对特定钱包在服务器端验证令牌所有权,则 tokenOwnership 允许您仅执行此操作。

resp = picket.token_ownership(
			chain="solana", 
			wallet_address="waLLETaddRess", 
			requirements={  
			  "collection": "METAPLEX_COLLECTION",
			  "minTokenBalance": "3",
			}
		)
# Response is of type TokenOwnershipResponse
print(resp.allowed)
print(resp.tokenBalances)

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源分发

picketapi-0.1.1.tar.gz (4.2 kB 查看哈希值)

上传时间

构建分发

picketapi-0.1.1-py3-none-any.whl (4.7 kB 查看哈希值)

上传时间 Python 3

由以下机构支持