首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何通过Elrond获得农场的当前收益?

如何通过Elrond获得农场的当前收益?
EN

Stack Overflow用户
提问于 2022-08-10 12:13:29
回答 1查看 64关注 0票数 1

如何通过Elrond REST从Maiar Exchange获得农场的当前收益?例如,对于LKMEX农场,我想确定在MEX和/或USDT中的当前收益(我挣到的MEX),因为最近的努力或‘再投资’。谢谢!

EN

回答 1

Stack Overflow用户

发布于 2022-08-23 08:47:08

你在这里有两个选择:

直接从合同中通过VM查询

简单和低级的方法是通过vm查询向calculateRewardsForGivenPosition视图函数询问所需的农场契约。这可以通过POST请求通过https://gateway.elrond.com/vm-values/query完成。

查看https://docs.elrond.com/sdk-and-tools/rest-api/virtual-machine/ for vm-通过REST详细信息查询,并查看上述视图函数的预期参数的https://github.com/ElrondNetwork/sc-dex-rs/blob/main/dex/farm/src/lib.rs#L372

基本上,您只需使用“农场令牌数量”和“农场令牌”的“属性”字段,就可以向农场合同索取最新的奖励,您可以使用https://api.elrond.com/nfts/[token]路由找到它们。

这个案例的一个具体例子是:

带有锁定奖励的erd1qqqqqqqqqqqqqpgq7qhsw8kffad85jtt79t9ym0a4ycvan9a2jps0zkpen

  • We
  • MEX农场:通过https://api.elrond.com/nfts/MEXFARML-28d646-360d8b:supply 2863539312887406729205021282获取农场令牌MEXFARML-28d646-360d8b的供应和属性(我们必须将其从十进制转换为十六进制);属性AAAABYENv6kdAAAAAAAAAg8AAAAAAAAC8QAAAAwGP0dX61aTZ298cosAAAAMAwFisUg/gGvN0gfWAAAADAlAqgkzlhPTPU56Yg== (我们必须将其从base64转换为十六进制);对于转换,您可以使用这个漂亮的工具:http://207.244.241.38/elrond-converters/

得到的VMQuery请求如下所示:

代码语言:javascript
复制
    POST https://gateway.elrond.com/vm-values/query HTTP/1.1
    Content-Type: application/json
    
    {
        "scAddress": "erd1qqqqqqqqqqqqqpgq7qhsw8kffad85jtt79t9ym0a4ycvan9a2jps0zkpen",
        "funcName": "calculateRewardsForGivenPosition",
        "args": ["0940aa09339613d33d4e7a62", "00000005810dbfa91d000000000000020f00000000000002f10000000c063f4757eb5693676f7c728b0000000c030162b1483f806bcdd207d60000000c0940aa09339613d33d4e7a62"]
    }

然后,您必须将响应从base64转换为十进制,以获得奖励金额。

通过GraphQL Maiar DEX服务进行黑客攻击

GraphQL Maiar DEX服务请求:由于服务回购不是公开的,因此您必须弄脏您的手,所以您必须用反向工程的方式来计算您必须提出的请求,并希望所需的路线没有经过身份验证。从理论上讲,这可能更容易使用,但正如我刚才所说,这需要事先进行一些调查工作。其中一种方法就是打开Maiar,通过浏览器的开发者控制台调查站点所做的网络请求。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73306131

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档