如果觉得我的内容对你有帮助,欢迎关注我的推特账号
如果需要更具体、系统、有针对性的教程指导,欢迎大家加入我的付费学习群包养我呀,每天只要1元钱噢
利用测试币在uniswap上完成币币兑换的操作
领取到了测试代币,我们就可以利用这个测试token在uniswap上学习一下如何使用这个去中心化交易所的swap(币币兑换)功能
需要注意的是,不同测试网上的测试币是不通用的,如果我们领取的是rinkeby上的测试ETH,需要先把钱包网络切换到rinkeby测试网;如果我们领取到的是ropsten上的测试ETH,就需要先把钱包网络切换到ropsten测试网。大家也可以两种都试试,加深熟练度,这里我就以rinkeby测试网为例进行说明。
首先登陆uniswap
链接成功后,右上角会看到自己的钱包地址和钱包余额
用ETH兑换其他币种
Uniswap的页面非常的简单直观,只有中间的一个兑换框,我们现在拥有0.5个测试ETH,我们可以用来兑换成其他的币种,点击红色的按钮在下拉菜单中可以选择想要兑换的代币。
这里我用0.1ETH兑换成uniswap的代币UNI来给大家做一下演示
点击兑换之后会进入一个二次确认的页面,我们在这个页面核对要兑换的金额和币种都正确无误之后点击确认兑换
在弹出的钱包页面里查看gas费用,因为gas费用是会根据链上活动情况而波动的,链上拥堵gas费就会高,如果我们发现gas费非常高,甚至比要兑换的本金还要贵的时候,我们就可以暂停交易,等gas降低之后再进行兑换。
如果gas比较低,我们可以直接点击确认,之后页面右上角会出现一个红色的待处理的按钮,表示该笔交易正在进行中
等待交易成功后,右上角的钱包地址后面会出现一个圆形的图标,点击该图标,我们可以查看最近的交易
此时我们再次打开钱包,会发现钱包中的ETH数量变少了,但是兑换到的UNI币却在钱包里看不到踪影,大家知道这是为什么嘛?
这是因为UNI的代币合约我们没有添加到钱包里,如果想要在钱包里看到UNI,我们需要先添加这个币到钱包才可以。
我把UNI在Rinkeyb上的代币合约告诉大家: 0x1f9840a85d5aF5bf1D1762F925BDADdC4201F984
大家可以利用之前学过的方法,自行把UNI代币添加到钱包里
我们可以快速利用0.1ETH来兑换一个其他币种MKR(这个是测试网的另外一个测试币种)来作为练习
用非ETH来兑换其他币种
当我们想要拿刚刚换到的MKR这个币种去兑换其他币种的时候,我们会惊讶的发现发现,比刚才的交易过程多了一步要允许Uniswap调用您的MKR的过程,而且这个过程还需要支付一笔gas费用,这是为什么呢?
这是因为去中心化的交易所,本质上是一个智能合约,简单来说智能合约就是根据合约上设定的预定条件自动执行的一种程序。当我们进行兑换的时候,我们需要告诉智能合约,你可以调用我的资产了,智能合约才会去执行,如果我们不告诉它们,它们是不会自动执行的,想想也很好理解,如果你的资产不经过你的批准,程序可以随便花,那岂不是挺可怕的?而告诉这个动作,其实就是一个上链的过程,所以需要支付gas费用。
但是这样一来,可能有小伙伴又会产生另外一个疑问,为什么一开始我在用ETH进行兑换的时候,没有这样一个授权操作呢?
从技术角度解释有点复杂,现在我们就暂时理解为:因为 ETH 作为以太坊网络的原生资产它比其他的ERC20 的代币有一些特权,可以不用授权直接进行转账,而其他的ERC20代币都需要进行授权才可以转账。
准确来说,授权操作有 2 步:
第 1 步:授权交易本身。是为了告诉我们现在正在操作的这个智能合约,将来可能会有目标智能合约地址 A 来我的钱包账户取走某个数量的该 Token 资产;
第 2 步:交易执行本身。当目标合约A中需要进行该 Token 交易时,合约 A 会去主动去触发 取走这个数量的该 Token 的转账交易;反之,如果没有涉及到该 Token 的交易,即使已经授权了,也不会真实发生资产交易。
所以我们给某个合约进行一个授权,其实就是给他了一个调用我们资产的权力,很多智能合约开发者为了避免用户反复进行授权操作,一般会默认设置授权最大数量的 Token 给到目标智能合约。但是,这种处理方式是存在一定风险的,如果智能合约出现漏洞或合约管理员作恶,那么用户的 Token 资产将存在丢失的风险,这就是「过度授权」带来的问题。
为了避免这个问题我们在授权的时候就要避免无限授权,在确认授权之前先利用编辑权限的功能修改一下我们要授权的数量,假设我们预估要交易300个数量的该代币,那么我们就把消费限制权限里的自定义消费限额改成300,然后再确认,这样就是有限授权,资产会更加的安全。
以上就是利用uniswap这种去中心化的交易所来进行交易的大概流程,其他的去中心化交易所的操作也基本上都是大同小异,大家可以利用今天掌握的知识,去流动性聚合器matcha交易所去尝试一下真实的交易
如何查看自己已经完成的交易?
我们打开狐狸钱包,点击活动可以发现最近进行过的操作,找到需要查看的交易点击进入选择在区块浏览器上查看,即可看到该笔交易的详情
如果觉得我的内容对你有帮助,欢迎关注我的推特账号,获取更多web3的安全知识、基本技能和实用资讯