1. 程式人生 > >nodejs Express路由傳引數據互動express.Router() router.get

nodejs Express路由傳引數據互動express.Router() router.get

路由是指如何定義應用的端點(URIs)以及如何響應客戶端的請求。

路由是由一個 URI、HTTP 請求(GET、POST等)和若干個控制代碼組成,它的結構如下: app.METHOD(path, [callback…], callback), app 是 express 物件的一個例項, METHOD 是一個 HTTP 請求方法, path 是伺服器上的路徑, callback 是當路由匹配時要執行的函式。

下面是一個基本的路由示例:
這裡寫圖片描述
這裡寫圖片描述
在app.js中部分程式碼:

var app = express();
// view engine setup
app.set('views', path.join
(__dirname, 'views')); //app.set('view engine', 'html');//已經將jade變成html app.engine('html', ejs.__express); app.set('view engine', 'html'); app.use('/spider',spider); //中介軟體設定路由跳轉 app.set('port', process.env.PORT || 3001); // 設定監聽埠

在spider.js中:

var express = require('express');
//初始化路由
var router = express.Router();
router.get('/'
, function(req, res, next) { console.log('spider') res.render('spider',{ title: '對某個網站進行爬去',message:'message'}); });

在spider.html中:

<title><%= title%></title>

其他程式碼沒有貼出來,展示的程式碼僅僅說明一下如何有後臺給的資料。

對應前端向後臺傳送請求的做法是:
這裡寫圖片描述
在spider.html中:

<div class="form-group row">
    <button
class="btn btn-primary col-sm-1 getNewUrl">
獲取新地址</button> <label class="col-sm-3 newUrl"></label> </div> <script> /*獲取新的地址*/ $('.getNewUrl').on('click',function(){ console.log('getNewUrl6666') $.ajax({ type: "GET", url: URL+"/spider/getInfoByType", data: { type:1 }, //dataType: "json", success: function(data){ console.log(data); $(".newUrl").text(data.newUrl) } }); }) </script>

在spider.js中:

//獲取對應網站的地址
router.get('/getInfoByType',function(req,res, next){
     /*處理瀏覽器同源策略問題*/
    res.header("Access-Control-Allow-Origin", "*");
    res.header('Access-Control-Allow-Methods', 'PUT, GET, POST, DELETE, OPTIONS');
    res.header("Access-Control-Allow-Headers", "X-Requested-With");
    res.header('Access-Control-Allow-Headers', 'Content-Type');
    res.json({newUrl:'urlurlurlurlurlurlurlurlurlurlurl'});
});

謝謝點贊和關注!