1. 程式人生 > 其它 >利用express寫api介面

利用express寫api介面

 1 // 匯入模組
 2 const express = require("express");
 3 // 生成伺服器
 4 const app = express();
 5 
//jsonp請求 6 app.get("/api/jsonp", (req, res) => { 7 // 拿到客戶端請求的回撥函式 8 const funcName = req.query.callback; 9 // 要返回給客戶端的資料 10 const data = { name: "zs", age: 18, gender: "male" }; 11 // 拼接字串 12 const DataStr = `${funcName}(${JSON.stringify(data)})`;
13 // 返回給客戶端 14 res.send(DataStr); 15 }); 16
//解決跨域請求的問題 cors 設定了請求頭 17 // 匯入中介軟體 18 const cors = require("cors"); 19 // 配置中介軟體 20 app.use(cors()); 21 // 配置表單資料的中介軟體 必須要配置這個才可以拿到客戶端post請求發過來的url-encoded 格式的資料 22 app.use(express.urlencoded({ extended: false })); 23 24 // 1--匯入router路由模組 25 const router = require("./routerApi");
26 // 2--掛載到全域性中介軟體上 27 app.use("/api", router); 28 29 // 開啟伺服器 30 app.listen(80, () => console.log("http://127.0.0.1"));

路由模組

 1 const router = require("express").Router();
 2 
 3 // get 請求
 4 router.get("/get", (req, res) => {
 5   // 獲取客戶端通過查詢字串 傳送到伺服器的資料
 6   const query = req.query;
 7   res.send({
 8
status: 0, //0表示處理成功 9 msg: "GET請求成功", 10 data: query, //把請求的資料 再響應給客戶端 11 }); 12 }); 13 // post 請求 14 router.post("/post", (req, res) => { 15 const body = req.body; 16 res.send({ 17 status: 0, //0表示處理成功 18 msg: "POST請求成功", 19 data: body, //把請求的資料 再響應給客戶端 20 }); 21 }); 22
//將模組暴露出去 23 module.exports = router;