Node.js中的express框架獲取參數


express獲取參數有三種方法:

  1. req.query  適合 http://localhost:3000/form?num=8888
  2. req.body   適合http://localhost:3000/form,然后Post一個num為tinyphp
  3. req.params  適合獲取form后的num:http://localhost:3000/form/num

 

一、GET

 app.js

var express = require('express');
var app = express();

app.use(express.static('public'));
//獲取數據
app.get('/form', function(req, res) {
    var num = req.query.num;
    res.send("你獲取的get數據為:" + num);
});

//設置監聽端口
app.listen(3000);

public/test.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
</head>
<body>
        <div id="box"></div>
        <form action="/form" method="get">
        <input type="text" name="num" value="8888">
        <input type="submit" value="提交">
        </form>

</body>
</html>

 

 

二、POST

解析post數據需要用到body-parser

npm body-parser --save

 app.js

var express = require('express');
var app = express();
//引入body-parser
var bodyParser = require('body-parser');
app.use(express.static('public'));

//需要use的
app.use(bodyParser.json()); // for parsing application/json
app.use(bodyParser.urlencoded({
    extended: true
})); // for parsing application/x-www-form-urlencoded

//獲取數據
app.post('/form', function(req, res) {
    var num = req.body.num;
    res.send("你獲取的post數據為:" + num);
});

//設置監聽端口
app.listen(3000);

public/test.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
</head>
<body>
        <div id="box"></div>
        <form action="/form" method="post">
        <input type="text" name="num" value="tinyphp">
        <input type="submit" value="提交">
        </form>

</body>
</html>

 

 

三、獲取路徑

app.js

var express = require('express');
var app = express();

//獲取數據
app.get('/form/:num', function(req, res) {
    var num = req.params.num;
    res.send("你獲取到form/后的參數:" + num);
});

//設置監聽端口
app.listen(3000);

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM