Подтверждение баланса
Используйте подтверждение баланса, чтобы делиться балансами между несколькими адресами. Это помогает привлекать пользователей, не требуя от них владения токенами.
С подтверждением баланса:
Вы оплачиваете транзакции
Пользователи подписывают транзакции
Подтверждение баланса:
Основано на токене, установленном при подключении к узлу Irys. И утверждающий, и утверждаемый должны использовать один и тот же токен
Регистрируется мгновенно после завершения загрузки
Непередаваемый
Могут быть настроено на автоматическое истечение срока действия
Создание подтверждения
Чтобы обновить существующее подтверждение, создайте новое подтверждение с тем же адресом (оно перезапишет существующее подтверждение)
const receipt = await irys.approval.createApproval({
amount: irys.utils.toAtomic(1), // Amount in atomic units
approvedAddress: "<address>",
expiresInSeconds: 100, // Expires in 100 seconds. Delete to remove expiration.
});Загрузка с использованием подтверждения
const receipt = await irys.upload("Hirys World", { upload: { paidBy: "<address>" } });Объединение подтверждение и тегов:
const uploadOptions = {
upload: {
paidBy: "<address>",
},
tags: [{ name: "Content-Type", value: "text/plain" }],
};
const receipt = await irys.upload(dataToUpload, uploadOptions);Отмена подтверждения:
const receipt = await irys.approval.revokeApproval({ approvedAddress: "<address>" });Получите балансы, которые вы можете использовать
Получите подтверждения по ряду предоставленных адресов:
const approvals = await irys.approval.getApprovals({
payingAddresses: ["<address>"],
});Получите первые 100 подтверждений:
const approvals = await irys.approval.getApprovals({});Возвращаемое значение запроса:
{
amount: string; // Amount approved in atomic units
payingAddress: string; // Address of the payer's wallet
approvedAddress: string; // Address of the wallet that received the approval
expiresBy: number; // Timestamp (in milliseconds) when approval expires
timestamp: number; // Timestamp (in milliseconds) when the approval was created
token: string; // Approved token
}
[];Получите подтверждения, которые вы создали
Получите подтверждения для предоставленного набора адресов:
const createdApprovals = irys.approval.getCreatedApprovals({
approvedAddresses: ["<address>"],
});Получите первые 100 подтверждений, которые вы создали:
const createdApprovals = irys.approval.getCreatedApprovals({});Возвращаемое значение запроса:
{
amount: string; // Amount approved in atomic units
payingAddress: string; // Address of the payer's wallet
approvedAddress: string; // Address of the wallet that received the approval
expiresBy: number; // Timestamp (in milliseconds) when approval expires
timestamp: number; // Timestamp (in milliseconds) when the approval was created
token: string; // Approved token
}
[];Оригинал статьи: https://docs.irys.xyz/build/d/features/balance-approvals#upload-using-an-approval
Последнее обновление