低代码插件--ERC3525协议插件

ERC3525插件

演示

在这里插入图片描述

ERC3525协议

ERC3525的标准接口

interface IERC3525 /* is IERC165, IERC721 */ {
    // 查看代币小数位
    function valueDecimals() external view returns (uint8);
    // 查询指定代币余额
    function balanceOf(uint256 _tokenId) external view returns (uint256);
    // 查询指定代币所在槽
    function slotOf(uint256 _tokenId) external view returns (uint256);
    // 授权操作人管理指定代币的指定金额
    function approve(
        uint256 _tokenId,
        address _operator,
        uint256 _value
    ) external payable;
    // 查询授权给操作人指定代币的金额
    function allowance(uint256 _tokenId, address _operator) 
    external view returns (uint256);
    // 代币给代币转账
    function transferFrom(
        uint256 _fromTokenId,
        uint256 _toTokenId,
        uint256 _value
    ) external payable;
    // 从代币给用户转账
    function transferFrom(
        uint256 _fromTokenId,
        address _to,
        uint256 _value
    ) external payable returns (uint256);
    event TransferValue(uint256 indexed _fromTokenId, uint256 indexed _toTokenId, uint256 _value);
    event ApprovalValue(uint256 indexed _tokenId, address indexed _operator, uint256 _value);
    event SlotChanged(uint256 indexed _tokenId, uint256 indexed _oldSlot, uint256 indexed _newSlot);

}

支持的插件大全

插件类型
插件名称插件说明
广告插件bannerbanner图的管理
连接器connector基于低代码框架实现的app与官方api交互
内容插件content内容分类管理、内容管理和单页内容管理
地区插件district中国省市县乡的数据
文件插件file基于IPFS实现的文件上传下载
后台插件manager后台菜单管理、角色管理和管理员管理,实现RBAC鉴权
插件管理plugins对所有满足协议的插件进行管理
短信插件sms短信发送和记录查询,支持沙盒和阿里云短信
单点登录sso浏览器插件单点登录后,获取jwt
用户插件user前台用户信息管理
Docker插件dockerDocker镜像、容器、网络和卷管理
钱包插件ETH实现以太坊节点交互的相关操作
钱包插件ERC20实现ERC20协议交互的相关操作
钱包插件ERC721实现ERC721协议交互的相关操作
钱包插件ERC115实现ERC1155协议交互的相关操作
钱包插件ERC3525实现ERC3525协议交互的相关操作
钱包插件TRON实现波场节点交互的相关操作

创建账户

请求URL: /erc3525/account

请求方式: POST

请求参数:

参数名类型说明是否必填
userIdstring用户ID

请求示例

{
    "userId": 888
}

返回示例:

{
	"msg": "success",
	"code": 0,
	"data": {
		"private": "9c6e5621e90f928fc6054bf95554d19086bd00f97064c735442cdfa0d7c3510b",
		"public": "03a02c7b45a9b244c5cd79d9a1d1061e49dca36e2c414a053fb41bae8152099435",
		"address": "0xaf93670b61eed69f81a6e5db393d1d5d13b09eea"
	}
}

获取账户列表

请求URL: /erc3525/accounts

请求方式: GET

请求参数:

参数名类型说明是否必填
pageSizestring每页数量
pageNumstring页数

请求示例

/erc3525/accounts?pageSize=10&pageNum=1

返回示例:

{
	"msg": "success",
	"code": 0,
	"data": {
		"records": [
			{
				"userId": 21,
				"privateKey": "",
				"publicKey": "03748ea1b350b2eeb8de409303c6d3556843ed2cabe50eabb4132b5b5188429fcf",
				"address": "0x8B665E3DF1ECBAC264cFEc3622Cb9049a62bD4e4",
				"create_time": "2024-08-04 14:12:51",
				"update_time": "2024-08-04 14:12:51"
			}
		],
		"total": 1
	}
}

发布合约

请求URL: /erc3525/deploy

请求方式: POST

请求参数:

参数名类型说明是否必填
fromstring操作用户地址
namestring代币名称
symbolstring代币符号
decimalstring小数位

请求示例

{
    "from": "0x9999f79a9ae77b8454b7c73c9c06532ab4f2d1d9",
    "name": "NFT 3525",
    "symbol": "555",
    "decimal": "8"
}

返回示例:

{
    "msg": "success",
    "code": 0,
    "data": "0x70983d88f51c15981e4e335a4e01be3aaa8a59a12f7d18f0583b23f59cc24cb3"
}

铸造NFT

请求URL: /erc3525/mint

请求方式: POST

请求参数:

参数名类型说明是否必填
fromstring发起账户地址
tostring代币合约地址
accountstring颁发给指定账户
slotstring所在槽
amountstring金额

请求示例

{
    "from": "0x9999f79a9ae77b8454b7c73c9c06532ab4f2d1d9",
    "to": "0x5bfe77e5f453cb3993e62d6e3f471e33809df58e",
    "account": "0x9999f79a9ae77b8454b7c73c9c06532ab4f2d1d9",
    "slot": "666",
    "amount": "10"
}

返回示例:

{
    "msg": "success",
    "code": 0,
    "data": "0x58460f3081c2684902731d46394cec7eef766039f4f336bfbc1da0cf42fbff02"
}

安全转移NFT归属

请求URL: /erc3525/safeTransferFrom

请求方式: POST

请求参数:

参数名类型说明是否必填
fromstring发起账户地址
tostring代币合约地址
senderstring发送方地址
receiverstring接收方地址
tokenIdstringNFT ID

请求示例

{
    "from": "0x9999f79a9ae77b8454b7c73c9c06532ab4f2d1d9",
    "to": "0x34d42f9f770bcd711862ae6d5fb18db9d171aa20",
    "sender": "0x9999f79a9ae77b8454b7c73c9c06532ab4f2d1d9",
    "receiver": "0x8B665E3DF1ECBAC264cFEc3622Cb9049a62bD4e4",
    "tokenId": "666"
}

返回示例:

{
	"msg": "success",
	"code": 0,
	"data": "0x3cee2d328448870cc1a635de7a9b8d211068a011c04d003e9e08894196828930"
}

转移NFT归属

请求URL: /erc3525/transferFrom

请求方式: POST

请求参数:

参数名类型说明是否必填
fromstring发起账户地址
tostring代币合约地址
senderstring发送方地址
receiverstring接收方地址
tokenIdstringNFT ID

请求示例

{
    "from": "0x8B665E3DF1ECBAC264cFEc3622Cb9049a62bD4e4",
    "to": "0x34d42f9f770bcd711862ae6d5fb18db9d171aa20",
    "sender": "0x8B665E3DF1ECBAC264cFEc3622Cb9049a62bD4e4",
    "receiver": "0x9999f79a9ae77b8454b7c73c9c06532ab4f2d1d9",
    "tokenId": "666"
}

返回示例:

{
	"msg": "success",
	"code": 0,
	"data": "0x38bee6f5dce30c0e6a1cd604682e9410c65238568176158d6ac6a0b728797cc8"
}

从token转移NFT给用户

请求URL: /erc3525/transferFromTokenToAddress

请求方式: POST

请求参数:

参数名类型说明是否必填
fromstring发起账户地址
tostring代币合约地址
tokenIdstringNFT ID
receiverstring接收方地址
amountstring金额

请求示例

{
    "from": "0x9999f79a9ae77b8454b7c73c9c06532ab4f2d1d9",
    "to": "0x5bfe77e5f453cb3993e62d6e3f471e33809df58e",
    "tokenId": "3",
    "receiver": "0x8B665E3DF1ECBAC264cFEc3622Cb9049a62bD4e4",
    "amount": "2"
}

返回示例:

{
	"msg": "success",
	"code": 0,
	"data": "0x9ddd7d97cd29fd3d2641add7bb9a9bb62c6a1c20702a1fd8b57c4914135e846a"
}

从token转移NFT给token

请求URL: /erc3525/transferFromTokenToToken

请求方式: POST

请求参数:

参数名类型说明是否必填
fromstring发起账户地址
tostring代币合约地址
fromTokenId发出NFT IDNFT ID
toTokenId接收NFT ID接收方地址
amountstring金额

请求示例

{
    "from": "0x9999f79a9ae77b8454b7c73c9c06532ab4f2d1d9",
    "to": "0x5bfe77e5f453cb3993e62d6e3f471e33809df58e",
    "fromTokenId": "3",
    "toTokenId": "4",
    "amount": "2"
}

返回示例:

{
	"msg": "success",
	"code": 0,
	"data": "0xe3d9fcc9be53967b8c2e94d67eabd82f038f07f49bb1c34409bc183820c2e3f3"
}

授权操作人管理指定NFT

请求URL: /erc3525/approve

请求方式: POST

请求参数:

参数名类型说明是否必填
fromstring发起账户地址
tostring代币合约地址
operatorstring操作人地址
tokenIdstringNFT ID

请求示例

{
    "from": "0x9999f79a9ae77b8454b7c73c9c06532ab4f2d1d9",
    "to": "0x5bfe77e5f453cb3993e62d6e3f471e33809df58e",
    "operator": "0x8B665E3DF1ECBAC264cFEc3622Cb9049a62bD4e4",
    "tokenId": "3"
}

注: 如果取消授权,只需operator参数传"0x0000000000000000000000000000000000000000"

返回示例:

{
	"msg": "success",
	"code": 0,
	"data": "0xbabff430ed05379caf050f0f8948b7635c775bd436cf51b8418e110bced5f0ea"
}

授权/取消操作人管理自己所有NFT

请求URL: /erc3525/setApprovalForAll

请求方式: POST

请求参数:

参数名类型说明是否必填
fromstring发起账户地址
tostring代币合约地址
operatorstring操作人
approvedstring全部授权(yes)全部取消(no)

请求示例

{
    "from": "0x9999f79a9ae77b8454b7c73c9c06532ab4f2d1d9",
    "to": "0x5bfe77e5f453cb3993e62d6e3f471e33809df58e",
    "operator": "0x8B665E3DF1ECBAC264cFEc3622Cb9049a62bD4e4",
    "approved": "no"
}

返回示例:

{
	"msg": "success",
	"code": 0,
	"data": "0x1f89e9a9ee195269491157201f8c9096effad1918e3539faa37ee87460106756"
}

查询操作人是否允许操作指定NFT ID

请求URL: /erc3525/allowance

请求方式: POST

请求参数:

参数名类型说明是否必填
fromstring发起账户地址
tostring代币合约地址
operatorstring操作人
tokenIdstringNFT ID

请求示例

{
    "from": "0x9999f79a9ae77b8454b7c73c9c06532ab4f2d1d9",
    "to": "0x5bfe77e5f453cb3993e62d6e3f471e33809df58e",
    "operator": "0x8B665E3DF1ECBAC264cFEc3622Cb9049a62bD4e4",
    "tokenId": "3"
}

返回示例:

{
	"msg": "success",
	"code": 0,
	"data": 0
}

查询账户下NFT数量

请求URL: /erc3525/balanceOf

请求方式: POST

请求参数:

参数名类型说明是否必填
fromstring发起账户地址
tostring代币合约地址
accountstring账户地址

请求示例

{
    "from": "0x9999f79a9ae77b8454b7c73c9c06532ab4f2d1d9",
    "to": "0x5bfe77e5f453cb3993e62d6e3f471e33809df58e",
    "account": "0x9999f79a9ae77b8454b7c73c9c06532ab4f2d1d9"
}

返回示例:

{
	"msg": "success",
	"code": 0,
	"data": 1
}

查询指定NFT下的金额

请求URL: /erc3525/balanceOfTokenId

请求方式: POST

请求参数:

参数名类型说明是否必填
fromstring发起账户地址
tostring代币合约地址
tokenIdstringNFT ID

请求示例

{
    "from": "0x9999f79a9ae77b8454b7c73c9c06532ab4f2d1d9",
    "to": "0x5bfe77e5f453cb3993e62d6e3f471e33809df58e",
    "tokenId": "3"
}

返回示例:

{
	"msg": "success",
	"code": 0,
	"data": 6
}

查询NFT ID被授权操作人地址

请求URL: /erc3525/getApproved

请求方式: POST

请求参数:

参数名类型说明是否必填
fromstring发起账户地址
tostring代币合约地址
tokenIdstringNFT ID

请求示例

{
    "from": "0x9999f79a9ae77b8454b7c73c9c06532ab4f2d1d9",
    "to": "0x5bfe77e5f453cb3993e62d6e3f471e33809df58e",
    "tokenId": "3"
}

注: 批量授权操作,无法用该方法查询

返回示例:

{
	"msg": "success",
	"code": 0,
	"data": "0x8B665E3DF1ECBAC264cFEc3622Cb9049a62bD4e4"
}

查询拥有者是否授权操作者管理所有NFT

请求URL: /erc3525/isApprovedForAll

请求方式: POST

请求参数:

参数名类型说明是否必填
fromstring发起账户地址
tostring代币合约地址
ownerstringNFT拥有者
operatorstringNFT操作者

请求示例

{
    "from": "0x9999f79a9ae77b8454b7c73c9c06532ab4f2d1d9",
    "to": "0x34d42f9f770bcd711862ae6d5fb18db9d171aa20",
    "owner": "0x9999f79a9ae77b8454b7c73c9c06532ab4f2d1d9",
    "operator": "0x8B665E3DF1ECBAC264cFEc3622Cb9049a62bD4e4"
}

返回示例:

{
	"msg": "success",
	"code": 0,
	"data": true
}

查询合约名称

请求URL: /erc3525/name

请求方式: POST

请求参数:

参数名类型说明是否必填
fromstring发起账户地址
tostring代币合约地址

请求示例

{
    "from": "0x9999f79a9ae77b8454b7c73c9c06532ab4f2d1d9",
    "to": "0x5bfe77e5f453cb3993e62d6e3f471e33809df58e"
}

返回示例:

{
	"msg": "success",
	"code": 0,
	"data": "NFT 3525"
}

查询合约管理员

请求URL: /erc3525/owner

请求方式: POST

请求参数:

参数名类型说明是否必填
fromstring发起账户地址
tostring代币合约地址

请求示例

{
    "from": "0x9999f79a9ae77b8454b7c73c9c06532ab4f2d1d9",
    "to": "0x5bfe77e5f453cb3993e62d6e3f471e33809df58e"
}

返回示例:

{
	"msg": "success",
	"code": 0,
	"data": "0x9999f79A9Ae77b8454b7C73c9C06532ab4f2d1d9"
}

查询token ID的拥有者

请求URL: /erc3525/ownerOf

请求方式: POST

请求参数:

参数名类型说明是否必填
fromstring发起账户地址
tostring代币合约地址
tokenIdstringNFT ID

请求示例

{
    "from": "0x9999f79a9ae77b8454b7c73c9c06532ab4f2d1d9",
    "to": "0x5bfe77e5f453cb3993e62d6e3f471e33809df58e",
    "tokenId": "3"
}

返回示例:

{
	"msg": "success",
	"code": 0,
	"data": "0x9999f79A9Ae77b8454b7C73c9C06532ab4f2d1d9"
}

查询token ID所在槽

请求URL: /erc3525/slotOf

请求方式: POST

请求参数:

参数名类型说明是否必填
fromstring发起账户地址
tostring代币合约地址
tokenIdstringNFT ID

请求示例

{
    "from": "0x9999f79a9ae77b8454b7c73c9c06532ab4f2d1d9",
    "to": "0x5bfe77e5f453cb3993e62d6e3f471e33809df58e",
    "tokenId": "3"
}

返回示例:

{
	"msg": "success",
	"code": 0,
	"data": 666
}

查询槽的 URI

请求URL: /erc3525/slotURI

请求方式: POST

请求参数:

参数名类型说明是否必填
fromstring发起账户地址
tostring代币合约地址
slotstring槽 ID

请求示例

{
    "from": "0x9999f79a9ae77b8454b7c73c9c06532ab4f2d1d9",
    "to": "0x5bfe77e5f453cb3993e62d6e3f471e33809df58e",
    "slot": "3"
}

返回示例:

{
	"msg": "success",
	"code": 0,
	"data": ""
}

查询合约符号

请求URL: /erc3525/symbol

请求方式: POST

请求参数:

参数名类型说明是否必填
fromstring发起账户地址
tostring代币合约地址

请求示例

{
    "from": "0x9999f79a9ae77b8454b7c73c9c06532ab4f2d1d9",
    "to": "0x5bfe77e5f453cb3993e62d6e3f471e33809df58e"
}

返回示例:

{
	"msg": "success",
	"code": 0,
	"data": "555"
}

根据数组索引查找 token

请求URL: /erc3525/tokenByIndex

请求方式: POST

请求参数:

参数名类型说明是否必填
fromstring发起账户地址
tostring代币合约地址
indexstring数据索引

请求示例

{
    "from": "0x9999f79a9ae77b8454b7c73c9c06532ab4f2d1d9",
    "to": "0x5bfe77e5f453cb3993e62d6e3f471e33809df58e",
    "index": "0"
}

返回示例:

{
	"msg": "success",
	"code": 0,
	"data": 1
}

根据数组索引查找用户token

请求URL: /erc3525/tokenOfOwnerByIndex

请求方式: POST

请求参数:

参数名类型说明是否必填
fromstring发起账户地址
tostring代币合约地址
ownerstringtoken拥有者
indexstring数据索引

请求示例

{
    "from": "0x9999f79a9ae77b8454b7c73c9c06532ab4f2d1d9",
    "to": "0x5bfe77e5f453cb3993e62d6e3f471e33809df58e",
    "owner": "0x8B665E3DF1ECBAC264cFEc3622Cb9049a62bD4e4",
    "index": "1"
}

返回示例:

{
	"msg": "success",
	"code": 0,
	"data": 2
}

查询NFT ID对应的URI

请求URL: /erc3525/tokenURI

请求方式: POST

请求参数:

参数名类型说明是否必填
fromstring发起账户地址
tostring代币合约地址
tokenIdstringNFT ID

请求示例

{
    "from": "0x9999f79a9ae77b8454b7c73c9c06532ab4f2d1d9",
    "to": "0x5bfe77e5f453cb3993e62d6e3f471e33809df58e",
    "tokenId": "1"
}

返回示例:

{
	"msg": "success",
	"code": 0,
	"data": "<svg width=\"800\" height=\"1126\" 
	style=\"background-image: url(https://www.biwow.com/download/bg.png); 
	background-size: 800px 1126px; background-repeat: no-repeat;\" 
	xmlns=\"http://www.w3.org/2000/svg\"><text fill=\"#000\" x=\"400\" 
	y=\"300\" text-anchor=\"middle\" font-size=\"50\">NFT 3525</text>
	<text fill=\"#000\" x=\"150\" y=\"540\" font-size=\"24\">Slot: 666</text>
	<text fill=\"#000\" x=\"150\" y=\"640\" font-size=\"24\">TokeId: 1</text>
	<text fill=\"#000\" x=\"150\" y=\"740\" font-size=\"24\">Balance: 10</text></svg>"
}

查询总发行量

请求URL: /erc3525/totalSupply

请求方式: POST

请求参数:

参数名类型说明是否必填
fromstring发起账户地址
tostring代币合约地址

请求示例

{
    "from": "0x9999f79a9ae77b8454b7c73c9c06532ab4f2d1d9",
    "to": "0x5bfe77e5f453cb3993e62d6e3f471e33809df58e"
}

返回示例:

{
	"msg": "success",
	"code": 0,
	"data": 4
}

查询小数位

请求URL: /erc3525/valueDecimals

请求方式: POST

请求参数:

参数名类型说明是否必填
fromstring发起账户地址
tostring代币合约地址

请求示例

{
    "from": "0x9999f79a9ae77b8454b7c73c9c06532ab4f2d1d9",
    "to": "0x5bfe77e5f453cb3993e62d6e3f471e33809df58e"
}

返回示例:

{
	"msg": "success",
	"code": 0,
	"data": 4
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值