标签: ethereum

处理以太坊DApps中的用户配置文件

我正在创建一个以太坊DApp.DApp由具有关联数据的用户组成,例如电子邮件,姓名和个人资料图片.我想将用户的内容作为JSON对象存储在IPFS中,并使用IPFS哈希在链上引用它.我怎样才能将这些数据与特定用户相关联?从某种意义上说,后续与DApp的交互将用户与存储在IPFS中的数据联系起来.这是使用用户帐户哈希和某种密码完成的吗?

例如,用户A有兴趣使用DApp,因此,提供他或她的电子邮件,姓名和个人资料图片.然后,任何与DApp的后续交互,如评论或帖子,都会将此用户链接到IPFS中的相应用户数据.

对这种建模用户的方式的任何建议或调整将不胜感激.谢谢!

(PS我来自传统的网络/移动应用程序世界,所以我只是习惯于使用智能合约对事物进行建模.所以如果这是一个简单或结构不合理的问题,我会提前道歉.)

blockchain ethereum solidity ipfs

14
推荐指数
1
解决办法
2077
查看次数

orbitdb(基于IPFS)和枪有什么区别?

我正在为我的Dapp寻找一个分散的数据库. 我找到了两个有用的解决方案orbitdbgun但我无法意识到主要区别,哪一个更适合使用以太坊智能合约的类似社交媒体的应用程序.

p2p ethereum gun ipfs

14
推荐指数
1
解决办法
1694
查看次数

React Native和web3 v1.0.0

我已经成功运行了React Native和web3@0.19.0两者rn-nodeifyReactNativify成功运行.

我知道web3 v1.0会动态构建模块,但我想知道是否有人成功将web3@1.0.0集成到React Native中?

任何想法或建议将受到高度赞赏.

干杯!

javascript react-native ethereum web3-donotuse

13
推荐指数
1
解决办法
296
查看次数

如何在智能合约中接收和发送USDT?

是否有任何指南或代码可以作为示例来实现智能合约接收和发送 USDT 到其他地址的功能。

我感谢您的帮助

ethereum solidity

13
推荐指数
1
解决办法
2万
查看次数

ValueError:不支持方法 eth_maxPriorityFeePerGas,带有 ganache 的 web3.py

我正在运行以下代码web3.py

transaction = SimpleStorage.constructor().buildTransaction(
    {"chainId": chain_id, "from": my_address, "nonce": nonce}
)
Run Code Online (Sandbox Code Playgroud)

我遇到了以下错误:

Traceback (most recent call last):
  File "/Users/patrick/code/web3_py_simple_storage/deploy.py", line 64, in <module>
    transaction = SimpleStorage.constructor().buildTransaction(
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/eth_utils/decorators.py", line 18, in _wrapper
    return self.method(obj, *args, **kwargs)
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/web3/contract.py", line 684, in buildTransaction
    return fill_transaction_defaults(self.web3, built_transaction)
  File "cytoolz/functoolz.pyx", line 250, in cytoolz.functoolz.curry.__call__
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/web3/_utils/transactions.py", line 121, in fill_transaction_defaults
    default_val = default_getter(web3, transaction)
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/web3/_utils/transactions.py", line 71, in <lambda>
    web3.eth.max_priority_fee + (2 * web3.eth.get_block('latest')['baseFeePerGas'])
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/web3/eth.py", line 549, in max_priority_fee …
Run Code Online (Sandbox Code Playgroud)

python ethereum solidity ganache

13
推荐指数
1
解决办法
3086
查看次数

该交易声明链 ID 5777,但连接的节点位于 1337

我正在尝试通过使用 python 进行交易,将我的 SimpleStorage.sol 合约部署到 ganache 本地链。连接到链条似乎有问题。

from solcx import compile_standard
from web3 import Web3
import json
import os
from dotenv import load_dotenv

load_dotenv()

with open("./SimpleStorage.sol", "r") as file:
    simple_storage_file = file.read()

compiled_sol = compile_standard(
    {
        "language": "Solidity",
        "sources": {"SimpleStorage.sol": {"content": simple_storage_file}},
        "settings": {
            "outputSelection": {
                "*": {"*": ["abi", "metadata", "evm.bytecode", "evm.sourceMap"]}
            }
        },
    },
    solc_version="0.6.0",
)

with open("compiled_code.json", "w") as file:
    json.dump(compiled_sol, file)


# get bytecode
bytecode = compiled_sol["contracts"]["SimpleStorage.sol"]["SimpleStorage"]["evm"][
    "bytecode"
]["object"]


# get ABI
abi = compiled_sol["contracts"]["SimpleStorage.sol"]["SimpleStorage"]["abi"]

# to …
Run Code Online (Sandbox Code Playgroud)

python ethereum solidity smartcontracts ganache

13
推荐指数
3
解决办法
1万
查看次数

Ethers.js“错误:未知帐户#0(操作=“getAddress”,代码= UNSUPPORTED_OPERATION)”

我尝试使用 Ethers.js 从 KyberSwap 获取 ETH 的价格,但收到以下错误:

Error: unknown account #0 (operation="getAddress", code=UNSUPPORTED_OPERATION, version=providers/5.5.3)
Run Code Online (Sandbox Code Playgroud)

我已连接到 Infura Web 套接字来获取数据。这是我的脚本:

Error: unknown account #0 (operation="getAddress", code=UNSUPPORTED_OPERATION, version=providers/5.5.3)
Run Code Online (Sandbox Code Playgroud)

我该如何修复这个错误?

ethereum ethers.js hardhat

13
推荐指数
2
解决办法
1万
查看次数

无法在反应中解析模块加密

我已经在这里发布了使用创建的 react-native 应用程序

react-native init myapp
added web3 in package.json
npm install
react-native run-ios
Run Code Online (Sandbox Code Playgroud)

但我收到了无法从 web3-eth-accounts 解析模块加密的错误。有没有什么办法解决这一问题

无法解决加密在此处输入图片说明

npm webpack react-native ethereum web3js

12
推荐指数
1
解决办法
1万
查看次数

如何使用 ethers.js 将 ETH 发送到合约函数?

我正在尝试通过元掩码和 ethers.js 从网络应用程序将 ETH 发送到合约函数。到目前为止我已经尝试过:

const provider = new ethers.providers.Web3Provider(window.ethereum);
const signer = provider.getSigner();
const splitterManager = new ethers.Contract(contract.address, contract.abi, signer);
var overrides = {value: 5}
const result = await splitterManager.newSplitter(addresses, shares, erc20, overrides);
console.log(result);
Run Code Online (Sandbox Code Playgroud)

但我不断收到“错误:未为 ENS 名称配置解析器或地址(参数=“名称”,值=“”,代码= INVALID_ARGUMENT,版本=合同/ 5.2.0)”。

ethereum solidity smartcontracts ethers.js

12
推荐指数
3
解决办法
1万
查看次数

“npx Hardhat 帐户”在 Hardhat 最新版本 2.9.9 中不可用

我已经安装了最新版本的安全帽。它安装得很好。

设置安全帽并安装所有必需的软件包后,当我运行时:

npx hardhat accounts
Run Code Online (Sandbox Code Playgroud)

它给出了一个错误:

Error HH303: Unrecognized task accounts
Run Code Online (Sandbox Code Playgroud)

似乎“帐户”任务已在最新版本的安全帽中删除。我现在的问题是获取安全帽生成的钱包帐户列表?

ethereum hardhat

12
推荐指数
2
解决办法
5344
查看次数