小编Oli*_*ver的帖子

通过 MetaMask 连接验证用户是否是 NFT 的所有者?确保连接用户的公共 eth 地址与 NFT 的相同吗?

我需要在我自己的域/服务器上验证连接了 MetaMask 钱包的用户是否是特定 NFT 的所有者,以便允许他使用特殊功能?基本上,我想让用户访问只有该 NFS 所有者才能访问的区域。

我原来的 NFT 在 opensea 中出售,但我不能使用 opensea 隐藏区域选项来为用户提供隐藏密码,因为下一个所有者(转售后)和旧所有者将拥有相同的密码,并且旧所有者仍然可以访问像这样。但我需要只有当前所有者才能访问。

我的用户/访问者已经可以在我自己的域中与 MetaMask 连接,并且我获得了活动帐户的公共 ETH 地址,但由于这只是 javascript 而我的后端是 PHP,所以我不能将 MetaMask 信息发布到我的 PHP 后端,因为这很容易被欺骗/破解。

如何确保当前连接的 MetaMask 帐户与 NFT 所有者(我知道)相同,并仅允许该用户访问 URL?

我当前的状态是用户连接他的 MetaMask,我使用 opensea API 来检查当前谁是 NFT 的所有者。我可以比较两个 eth 地址,但其中的缺陷显然是我使用 ajax 将 MetaMask 公共地址发送到我的后端,这仅用于测试,因为这当然是零保存!

预先感谢您提供我能得到的任何想法、帮助和提示。

PS:我的后端是PHP

authentication metamask nft

11
推荐指数
1
解决办法
4899
查看次数

由于某种原因,moment.js显示的iOS设备时间与Android设备的时间不同

几个小时以来,我一直在努力解决问题,没有找到任何解决方案。我在Ionic移动应用程序中使用Moment.js。

在某个时候,我以“小时”和“分钟”的格式获取带有“从”和“到”时间的json数据:

营业时间示例:

{“从”:14460000,“到”:100740000}

我使用此json数据的时刻如下所示:

var from_time   = moment(hours.object.from).format("HH:mm");
var to_time     = moment(hours.object.to).format("HH:mm");
Run Code Online (Sandbox Code Playgroud)

问题是,在Android设备上,一切都正确,但是在iOS设备上,时间转换错误

在Android上的结果:00:01 // 23:59

在iOS上的结果01:01 // 00:59

进行此测试时,两部手机(Android和ios设备)在相同的时区和相同的位置。以及我的计算机(浏览器控制台)确实向我显示了正确的时间(例如Android),只有iOS设备可以关闭一小时。

感谢您的帮助。

javascript android ios momentjs ionic-framework

5
推荐指数
0
解决办法
766
查看次数