我在测试网络上创建了硬币。现在的困惑是,
我已经向 100 个成员分发了硬币,他们可以使用这些硬币在我的平台上购买数字产品(域)。现在的困惑是,如果所有域都以 10 美元(100 个硬币)的价格出售,并且多个域被出售,怎么能我确定了哪个用户向我付款。因为所有用户都可以看到我的钱包地址。有没有什么方法可以检测到哪个购买的产品的付款?
我在测试网络上创建了硬币。现在的困惑是,
我已经向 100 个成员分发了硬币,他们可以使用这些硬币在我的平台上购买数字产品(域)。现在的困惑是,如果所有域都以 10 美元(100 个硬币)的价格出售,并且多个域被出售,怎么能我确定了哪个用户向我付款。因为所有用户都可以看到我的钱包地址。有没有什么方法可以检测到哪个购买的产品的付款?
将您的钱包变成智能合约。
然后检查应付的后备功能。每当有人向您的合约发送以太币时,该函数就会被调用。
function () payable {
address guyWhoPaiedMe = msg.sender;
}
要弄清楚是谁给你发送了以太币,请使用 msg.sender。
您可以将特定产品的标识符作为交易的输入数据传递。在这种情况下,很容易识别付款所针对的产品。
web3.eth.sendTransaction web3.eth.sendTransaction(transactionObject [, callback])
向网络发送交易。
参数 1. Object - 要发送的交易对象: • from: String - 发送账户的地址。如果未指定,则使用 web3.eth.defaultAccount 属性。• to: String -(可选)消息的目标地址,对于合同创建交易未定义。• value: Number|String|BigNumber - (可选)在 Wei 中为交易转移的价值,如果是合约创建交易,也是捐赠。• gas:Number|String|BigNumber -(可选,默认值:待确定)用于交易的gas 量(未使用的gas 将被退还)。• gasPrice: Number|String|BigNumber - (可选,默认值:待确定)本次交易的gas价格,单位为wei,默认为平均网络gas价格。• data: String -(可选)包含消息相关数据的字节字符串,或者在合约创建交易的情况下,初始化代码。• nonce: Number - (可选)nonce 的整数。这允许覆盖您自己的使用相同 nonce 的待处理事务。2. 功能 - (可选)如果您传递回调,则 HTTP 请求是异步的。有关详细信息,请参阅此说明。
退货
String - 作为 HEX 字符串的 32 字节交易哈希。