【发布时间】:2018-08-14 00:14:07
【问题描述】:
这里的基本问题:我使用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 /。
【问题讨论】:
-
尝试使用 action="/" 吗?
-
我得到同样的错误
-
尝试用 我看不出你的代码有任何问题:/
-
还是同样的错误。我很感激你尝试。也许你可以帮助我:)
-
@Coreeze 是的,文件已创建,我还添加了 respond.write("Created");它返回它就好了。