Какова альтернатива «одобрить» в evm на Солане?
У меня есть несколько кошельков в evm. Я предоставляю их токену X доступ к моему основному кошельку, вызывая функцию Contract(x).approve(). Таким образом, я могу совершать операции с этими кошельками. Теперь я хочу сделать то же самое на solana с библиотекой solana web3. Однако я не могу найти какую-либо функцию, которая позволяет использовать мой основной кошелек. Токен X на Solana использует программу токена solana.
1 ответ
Правильно, вы не можете утверждать токены, используя обычный
@solana/web3.js
пакет, поэтому вам придется использовать
@solana/spl-token
упаковать одним из двух способов:
-
approve
делает это с клиента (https://github.com/solana-labs/solana-program-library/blob/edec44180c3349abd77677acb2270a00121f2936/token/js/client/token.js#L905) -
createApproveInstruction
создает инструкцию, которую вы должны включить вTransasction
а затем отправить (https://github.com/solana-labs/solana-program-library/blob/edec44180c3349abd77677acb2270a00121f2936/token/js/client/token.js#L1570)