to przykład postać w HTML:node.js - Jak przesłać dane z html wyrazić
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>CSS3 Contact Form</title>
</head>
<body>
<div id="contact">
<h1>Send an email</h1>
<form action="/myaction" method="post">
<fieldset>
<label for="name">Name:</label>
<input type="text" id="name" name="name" placeholder="Enter your full name" />
<label for="email">Email:</label>
<input type="email" id="email" placeholder="Enter your email address" />
<label for="message">Message:</label>
<textarea id="message" placeholder="What's on your mind?"></textarea>
<input type="submit" value="Send message" />
</fieldset>
</form>
</div>
</body>
</html>
a to node.js funkcja, która działa na serwerze:
var sys = require('sys'),
http = require('http');
http.createServer(function (req, res) {
switch (req.url)
case '/myaction':
res.end(?????);
break;
}
}).listen(8080);
sys.puts('Server running at http://127.0.0.1:8080/');
I mają 2 pytania:
- Jak mogę wywołać funkcję
myaction
w pliku node.js ze strony html? Ponieważ plik html działa na porcie 80 i node.js na 8080 (gdy próbuję przenieść plik node.js do portu 80, zapisuje "// Nieobsługiwane" zdarzenie "błędu") - W funkcji node.js, gdzie I położyć "?????" jak mogę uzyskać dane z formularza html. Po wpisaniu req.html.body.name nie uzyskać dane ...
Czy myślałeś o użyciu ekspresu? Ma wbudowany moduł obsługi formularzy. Używam go z dużymi sukcesami, publikując formularze. –