Move.

Bài viết

Chia sẻ kiến thức của bạn.

yhant3.
Apr 07, 2025
Hỏi đáp Chuyên Gia

Làm thế nào để đảm bảo chỉ chủ sở hữu NFT mới có thể chuyển giao nó trong hợp đồng?

Này mọi người! Tôi đang thực hiện hợp đồng NFT và muốn đảm bảo rằng chỉ chủ sở hữu hợp pháp của NFT mới có thể chuyển giao nó. Tôi có chức năng này để chuyển:

public fun transfer(
    nft: DevNetNFT, recipient: address, _: &mut TxContext
) {
    transfer::public_transfer(nft, recipient)
}

Việc kiểm tra này có được thực hiện trong public_transferphương thức không, hay tôi cần thêm logic bổ sung?

  • Move CLI
0
3
Chia sẻ
Bình luận
.

Câu trả lời

3
kryptoschain.
Apr 7 2025, 20:34

Để làm rõ hơn nữa, đó không phải public_transferlà kiểm tra quyền sở hữu cụ thể, mà là ngữ nghĩa giao dịch Sui. Để một giao dịch chấp nhận một đối tượng làm đầu vào, bạn phải có quyền sở hữu, nghĩa là địa chỉ của người gửi phải khớp với địa chỉ chủ sở hữu trên đối tượng. Tuy nhiên, các đối tượng được chia sẻ coi mọi người là 'chủ sở hữu' cho mục đích giao dịch.

0
Bình luận
.
deriss.
Apr 7 2025, 20:36

checkWithegorTrước khi chuyển NFT, public_transferchức năng kiểm tra xem người gửi có giữ NFT hay không. Do đó, logic thực sự được tích hợp vào public_transferphương pháp.

0
Bình luận
.
DuAn.
Apr 7 2025, 21:52

Bạn thực sự không cần chức năng này vì bạn có thể gọi trực tiếp tx.transferObjectstrong PTB.

0
Bình luận
.

Bạn có biết câu trả lời không?

Hãy đăng nhập và chia sẻ nó.

Move is an executable bytecode language used to implement custom transactions and smart contracts.

148Bài viết231Câu trả lời
Sui.X.Peera.

Kiếm phần của bạn từ 1000 Sui

Tích lũy điểm danh tiếng và nhận phần thưởng khi giúp cộng đồng Sui phát triển.

Chúng tôi sử dụng cookie để đảm bảo bạn có trải nghiệm tốt nhất trên trang web của chúng tôi.
Thêm thông tin