결제구독
구독 권한은 프로그램이 사용자의 토큰 계정에 대한 SPL 토큰 위임자로 사용하는 PDA입니다. 사용자가 해당 민트에 대한 활성 고정 위임, 반복 위임 또는 구독 위임이 더 이상 없을 때 이를 닫으세요.
계정을 닫으면 렌트가 계정의 램포트 자금 제공자에게 반환되고 프로그램이 소유한 토큰 위임 승인이 취소됩니다. 자금 제공자는 일반적으로 사용자이지만 구독 권한 계정에 자금을 제공한 모든 지불자가 될 수 있습니다. 활성 위임이 여전히 권한에 의존하는 경우 먼저 해당 위임을 닫으세요.
권한 닫기
import { address, createClient } from '@solana/kit';import { solanaLocalRpc } from '@solana/kit-plugin-rpc';import { signer } from '@solana/kit-plugin-signer';import {findSubscriptionAuthorityPda,subscriptionsProgram,} from '@solana/subscriptions';const client = createClient().use(signer(userSigner)).use(solanaLocalRpc({ rpcUrl: 'http://127.0.0.1:8899' })).use(subscriptionsProgram());const tokenMint = address('TOKEN_MINT_ADDRESS_HERE');const [subscriptionAuthorityPda] = await findSubscriptionAuthorityPda({user: userSigner.address,tokenMint,});await client.subscriptions.instructions.closeSubscriptionAuthority({user: userSigner,tokenMint,// Include this only when a sponsor funded the Subscription Authority.receiver: sponsorSigner.address,}).sendTransaction();
참고사항
- 사용자가 닫기 트랜잭션에 서명합니다.
- 스폰서가 구독 권한에 자금을 제공한 경우 해당 스폰서 계정을
receiver로 전달하여 렌트가 기록된 지불자에게 반환되도록 합니다. - 구독 권한을 닫기 전에 고정, 반복 및 구독 위임 PDA를 닫으세요.
- 사용자가 나중에 새 위임을 생성하는 경우 동일한 민트에 대해 새 구독 권한을 초기화하세요.
Is this page helpful?