결제구독

구독 권한 닫기

구독 권한은 프로그램이 사용자의 토큰 계정에 대한 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?

목차

페이지 편집