代码之家  ›  专栏  ›  技术社区  ›  Ezeeroc

将HTML按钮链接到node.js post

  •  2
  • Ezeeroc  · 技术社区  · 6 年前

    express 我想通过点击一个HTML按钮在服务器上创建一个文件。

    srcServer.js :

    var express = require('express');
    var path = require('path');
    var open = require('open');
    var fs = require('fs');
    
    var port = 3000;
    var app = express();
    
    app.get('/', function(req, res){
        res.sendFile(path.join(__dirname, '../src/index.html'));
    });
    
    app.post('/', function(request, respond) {
        fs.writeFile('message.txt', 'Hello Node.js', (err) => {
            if (err) throw err;
            console.log('The file has been saved!');
        });
    });
    
    app.listen(port, function(err){
        if(err){
            console.log(err);
        }else{
            open('http://localhost:' + port);
        }
    });
    

    这是 index.html

    <!DOCTYPE html>
    <html>
    <head>
      <meta charset="utf-8"/>
    </head>
    <body>
      <h2>The Button Element</h2>
      <form action="" method="post">
        <button name="foo" value="send">Send</button>
    </form>
    </body>
    </html>
    

    我很确定问题是我如何处理HTML按钮,但我不知道更好。单击时收到的错误是: Cannot POST / .

    1 回复  |  直到 6 年前
        1
  •  0
  •   Ezeeroc    6 年前

    问题是文件夹-我在 srcServer.js . 当我把所有的文件放在一个文件夹中之后,它工作得很好,这样做更容易正确。