基于 Node.js 平台 Web 开发框架 express 学习
一。express
1.准备工作 创建express文件夹 打开终端 安装node npm
2.开始 创建package.json *(npm install)
3.导入express包(npm install express)
4.创建main.js文件 根文件
5. main.js 引入 const express = require("express")
6.并创建web服务器 const app = express()
7.并使用服务器名.listen()方法启动服务器
app.listen(3000, () => { console.log("服务器启动于http://127.0.0.1:3000"); })
#main.js 代码示例
const express = require(express)
const app = express()
app.listen(3000, (err) => {
if(!err) {
console.log(服务器已启动 端口号3000:::)
console.log(http://127.0.0.1:3000)
}
})
#当前目录图
#试运行 main.js (node ./main.js)运行成功示意图
二。
1.创建api 提供ajax 请求地址 (res 是成功后的回调函数)
1.0 首先处理跨域问题 跨域(不同协议 不同域名 不同端口 )
1.使用cors跨域处理 安装cors (npm install cors)
并在main.js引入
const cors = require(cors); app.use(cors());
2. 全局 中间件 解决所有路由的 跨域问题 main.js
app.all(*,function (req,res,next) {
res.header(Access-Control-Allow-Origin,*)
res.header(Access-Control-Allow-Headers,X-Requested-With,Content-Type)
res.header(Access-Control-Allow-Methods,GET,POST,OPTIONS)
next()
})
1.1 get 请求
main.js
app.get(/hello, (req, res) => {
//获取参数req.query
res.send(hello world)
//响应数据给客户端
})
ajax (axios示例)
axios.get(http://127.0.0.1:3000/hello).then(res => {
console.log(res)
})
1.2 post 请求
post接收参数需要使用解析中间件 body-parser (npm install body-parser)
const bodyParser = require(body-parser)
// parse application/x-www-form-urlencoded
app.use(bodyParser.urlencoded({ extended: false }))
// parse application/json
app.use(bodyParser.json())
main.js
app.post(/login, (req, res) => { // res 是成功后的回调函数
// 获取参数 console.log(req.body)
res.send(hello world)
// res.send({
// Status:200,
// msg: success,
// data: {
// code: 200,
// data: {
// },
// message: success
// },
// })
})
ajax (axios示例)
axios.post(http://127.0.0.1:3000/login, {name: wk}).then(res => {
console.log(res)
})
接口获取request参数的三种方式
console.log(req.query)
console.log(req.params)
console.log(req.body)
1.3获取请求头数据
main.js
app.post(/login, (req, res) => {
console.log(req.headers)
res.send(hello world)
})
//请求头数据req.headers
ajax (axios示例)
axios.post(http://127.0.0.1:3000/login, data, { headers: { timestamp:timestamp, sign:sign, token: }}).then(res => {
console.log(res)
})
res.send() 设置返回数据
上一篇:
Java架构师技术进阶路线图
