2016-11-04 103 views
0

我想使用restify和post路徑打印輸入值,但它不起作用。該form.html頁面打開和提交後,我看到這個網址:如何使用restify和post提交表單數據?

http://localhost:8081/?name=dsf

但我沒有看到在控制檯的任何消息。難道我做錯了什麼?

這裏是我的代碼:

select.js

var restify=require('restify'); 
var server=restify.createServer(); 
var mysql=require('mysql'); 
server.listen(8081, function(){ 
    console.log("%s is running at %s", server.name, server.url); 
}); 
var pool=mysql.createPool({ 
    host: 'localhost', 
    user: 'root', 
    password: '', 
    database: 'books' 
}); 
server.get(/\/?.*/, restify.serveStatic({ 
    directory: __dirname, 
    default: 'form.html' 
})); 
server.post('/hello/', function send(req, res, next){ 
    pool.getConnection(function(err, connection){ 
     if(err){ 
     }else{ 
      var table=req.body.name; 
      console.log(table); 
     } 
    }); 
}); 

form.html

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <meta charset="UTF-8"> 
    <title>Title</title> 
</head> 
<body> 
<form method="POST"> 
    <input type="text" name="name"> 
    <input type="submit" value="submit"> 
</form> 
</body> 
</html> 

兩個文件位於C:/文件夾的RESTify。

+0

首先,添加一個console.log語句來打印出err(如果存在)。 – HeadCode

回答

0

action屬性在您的<form>標記中缺失。嘗試將其設置爲action="/hello/"。它能解決你的問題嗎?

+0

這是一個錯誤。我糾正了它,但仍然是相同的迴應。 –

+0

這裏:'var table = req.body.name;'。你確定它不應該是這樣的:'var table = res.body.name;'? ** res **而不是**請求** –

+0

是的,很確定。 –

相關問題