如何让服务器将远程 json 对象返回给客户端?反应/快递/web3

Posted

技术标签:

【中文标题】如何让服务器将远程 json 对象返回给客户端?反应/快递/web3【英文标题】:How to have a server return a remote json object to client? react/express/web3 【发布时间】:2019-05-14 06:36:51 【问题描述】:

我正在使用web3Ethereum 发送交易。我的express 服务器将块、transactionHash 等数据记录为json 对象。我需要将json 返回给客户端。

这个问题冒着重复上一个问题的风险,但我相信它更精炼,更切题,最终是一个不同的问题。这些先前的线程已帮助我从代码中删除了几个错误,并将实际发生的事情归零。

How to return json data to a react state?

How to await a json return value (the return takes at least 30 seconds) before logging it? javascript/react/express

How to set state of a react component with a specific item from a returned json object?

返回空白值而不是 json 对象的具体代码是:

web3.eth
  .sendSignedTransaction("0x" + serializedTx.toString("hex"))
  .on("receipt", console.log, res.json());

客户代码:

axios
   .post("http://ec2-54-67-28-69.us-west-1.compute.amazonaws.com:3000/")

   .then(response => console.log(response.data, payment))
   .catch(function(error) 
     console.log(error);
   )

我不知何故需要在res.json() 中获取json 对象,但将它放在函数() 中不起作用。有什么建议? 谢谢!

编辑。我很确定我需要使用以下内容:

web3.eth.sendTransaction(from: '0x123...', data: '0x432...')
.once('transactionHash', function(hash) ... )
.once('receipt', function(receipt) ... )
.on('confirmation', function(confNumber, receipt) ... )
.on('error', function(error) ... )
.then(function(receipt)
    // will be fired once the receipt is mined
);

【问题讨论】:

【参考方案1】:

试试这个:

web3.eth
   .sendSignedTransaction("0x" + serializedTx.toString("hex"))
   .on("receipt", res.json);

res.json() 的操作方式是在没有参数的情况下调用的。

【讨论】:

返回 404,谢谢。我认为解决方案是回调/承诺结构。我正在计划一个数据库工作。

以上是关于如何让服务器将远程 json 对象返回给客户端?反应/快递/web3的主要内容,如果未能解决你的问题,请参考以下文章

如何将 JSON 返回反序列化为从 RestSharp 调用到 API 的对象数组?

C#如何生成JSON字符串?(序列化对象)

如何在没有 MVC 引用的情况下将 JSON 对象返回给客户端?

如何将Paramiko exec_commmand作为字符串返回给python客户端[重复]

C#如何生成JSON字符串提交给接口(服务器)

Json.NET:将嵌套数组反序列化为强类型对象