ΠληρωμέςΣυνδρομές

Δημιουργία Αρχής Συνδρομής

Η Αρχή Συνδρομής είναι ένα PDA που το πρόγραμμα χρησιμοποιεί ως εξουσιοδοτημένο πρόσωπο SPL Token για τον λογαριασμό token ενός χρήστη και ένα token mint. Δημιουργήστε την πριν από τη δημιουργία σταθερών εξουσιοδοτήσεων, επαναλαμβανόμενων εξουσιοδοτήσεων ή συνδρομών σχεδίων συνδρομής για αυτό το mint.

Ο λογαριασμός token του χρήστη πρέπει να υπάρχει ήδη. Η αρχικοποίηση δημιουργεί το PDA της Αρχής Συνδρομής και το εγκρίνει ως εξουσιοδοτημένο πρόσωπο token στον λογαριασμό token του χρήστη.

Δημιουργία της Αρχής

import { address, createClient } from '@solana/kit';
import { solanaLocalRpc } from '@solana/kit-plugin-rpc';
import { signer } from '@solana/kit-plugin-signer';
import { findAssociatedTokenPda, TOKEN_PROGRAM_ADDRESS } from '@solana-program/token';
import {
fetchMaybeSubscriptionAuthority,
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 [userAta] = await findAssociatedTokenPda({
mint: tokenMint,
owner: userSigner.address,
tokenProgram: TOKEN_PROGRAM_ADDRESS,
});
const [subscriptionAuthorityPda] = await findSubscriptionAuthorityPda({
user: userSigner.address,
tokenMint,
});
const subscriptionAuthority = await fetchMaybeSubscriptionAuthority(
client.rpc,
subscriptionAuthorityPda,
);
if (!subscriptionAuthority.exists) {
await client.subscriptions.instructions
.initSubscriptionAuthority({
tokenMint,
tokenProgram: TOKEN_PROGRAM_ADDRESS,
userAta,
})
.sendTransaction();
}

Σημειώσεις

  • Ο χρήστης υπογράφει τη συναλλαγή αρχικοποίησης.
  • Δημιουργήστε μία Αρχή Συνδρομής ανά ζεύγος χρήστη και token mint.
  • Επαναχρησιμοποιήστε την υπάρχουσα Αρχή Συνδρομής για μεταγενέστερες εξουσιοδοτήσεις στο ίδιο mint.
  • Κλείστε την Αρχή Συνδρομής μόνο αφού κάθε εξουσιοδότηση που εξαρτάται από αυτήν έχει ανακληθεί ή κλείσει.

Is this page helpful?

Πίνακας Περιεχομένων

Επεξεργασία Σελίδας
© 2026 Ίδρυμα Solana. Με επιφύλαξη παντός δικαιώματος.