gpt4 book ai didi

javascript - 将 HTML 表单中的值提交到 Node-js

转载 作者:行者123 更新时间:2023-12-02 21:42:19 25 4
gpt4 key购买 nike

我想将 HTML 表单中的输入值提交到 Node-js。 Node-js 应该将该值作为参数分配给 Solidity 函数。但显示错误:TypeError:无法读取未定义的属性“oinput”。我应该怎么办?请帮助初学者。

HTML:

<!DOCTYPE html>
<html>
<head>
<title>Alireza</title>
<body>
<form id="FORM" name="FORM" method="POST" action="http://127.0.0.1:1408">
<input id="Finput" name="oinput" value="Null" onclick="this.form.submit()"/>

</form>
<script>
document.forms[0].oinput.value=prompt("Type a thing: ","Here ...");
</script>
</body>
</html>

app.js:

var express=require('express');
var app=express();
var fs=require('fs');
var http = require('http');
var bodyParser=require('body-parser');
var Web3=require('web3');
var web3=new Web3('ws://127.0.0.1:8545');

var YerevanJSON="E:/Alireza/build/contracts/Yerevan.json";
var YerevanJS=JSON.parse(fs.readFileSync(YerevanJSON));
var YerevanABI=YerevanJS.abi;

var Yerevan=new web3.eth.Contract(YerevanABI, "0x1E6B6524e7da86bafa5ac948b38dA68e6841f0c7");
Yerevan.defaultAccount="0x152AfF6BBF98F2FF2EFAdA32E2ba85CC231cbA13";

app.post("/", function(q,r){

Yerevan.methods.eval(q.body.oinput).send({from:"0x33aa0ba26Dc247BA5d94545344c413949B746360"});
});

app.listen(1408, err=>{ console.log('ERROR')});

坚固性:

    pragma solidity ^0.5.12;

contract Yerevan{
string public city;
function eval(string memory sense) public returns(string memory){
city=sense;
return city;
}
}

最佳答案

您已将 body-parser 包含到文件中,但未要求应用程序使用它。添加以下行

 const bodyParser = require("body-parser");
// for parsing application/json
app.use(bodyParser.json());
//for parsing application/xwww-form-urlencoded
app.use(bodyParser.urlencoded({ extended: true }));

您正在使用 var,开始使用 const 并改为 let。

关于javascript - 将 HTML 表单中的值提交到 Node-js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60339474/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com