Anchor
SPL Token với Anchor

SPL Token với Anchor

Instruction chuyển token

Chuyển token từ account này sang account khác. Đây là thao tác cơ bản để gửi token giữa các người dùng.

Trước khi chúng ta có thể chuyển bất kỳ token nào, chúng ta sẽ cần phải có:

  • Account Mint đã được khởi tạo.
  • Account Token nguồn hoặc account Associated Token đã có tối thiệu số lượng chúng ta muốn chuyển.
  • Account Token đích hoặc account Associated Token sẽ nhận token từ account Token nguồn.

Số lượng token chúng ta chuyển được "chuẩn hóa" với decimal. Điều này có nghĩa là nếu chúng ta muốn chuyển 1 token có decimal là 6, chúng ta sẽ cần thực sự đặt 1_000_000 làm amount

Đây là cách gọi CPI đến instruction transfer():

transfer(
    CpiContext::new(
        ctx.accounts.token_program.to_account_info(),
        Transfer {
            from: ctx.accounts.from_token_account.to_account_info(),
            to: ctx.accounts.to_token_account.to_account_info(),
            authority: ctx.accounts.authority.to_account_info(),
        },
    ),
    &1_000_000,
)?;
Nội dung
Xem mã nguồn
Blueshift © 2025Commit: fd080b2