为什么我不在开机自检时读取数据



我学习节点有问题。为什么我不读取数据在我的POST请求?当我发送我的POST在html,如果与要求。方法POST是工作,但发射'data'不工作。这是我的html:

的一部分
<form method="post" action='./script.js'>
<label for="my-form">Enter phraze</label><input type="text" id='my-form'><br>
<input type="submit">
</form>
let fs   = require('fs');
let http = require('http');
let server = http.createServer( (req, res) => {
  res.setEncoding = 'utf8';
  res.writeHead(200, {'Content-type': 'text/html'});
  if(req.url == '/'){
   reply('./index.html', res)
  }
  if(req.method == 'POST'){
   let body;
   req.on('data',
    (chunk) => { if(chunk != null) {body += chunk.toString(); res.write(chunk.toString())} })
   req.on('end',
    () => res.end(body) )
 }
}).listen(5858);
server.on('error', (err) => { throw err.message });
function reply(path, res){
  let streamPage = fs.createReadStream(path, {encoding: 'utf8'});
  streamPage.on('readable',
    (chunk) => { chunk = streamPage.read(); if(chunk != null) res.write(chunk) });
  streamPage.on('end',
    (out) => res.end());
  streamPage.on('error', (err) => err.message)
}

您发送post请求到脚本文件,这是不正确的。你应该在action字段中设置到你的服务器的路由。

<form method="post" action='/'>
<label for="my-form">Enter phraze</label><input type="text" id='my-form'><br>
<input type="submit">
</form>

就像这样

最新更新