从Express框架开始学习node

380 阅读1分钟

Express

前言废话

做前端两年了,我终于向全栈迈进了,node官网大量api对新手学习并不友好,我打算跟着B站视频从使用Express框架开始一点点接触node,待我度过初级阶段和遇到场景再深入官网学习各个api

一、快速上手路由

  1. 准备环境 node npm
// 安装成功后查看当前版本号
node -v
npm -v
  1. 新建文件夹express-test, 安装express
npm install express --save
  1. 新建文件server.js,开始写nodejs
// 引用express模块
const express = require('express');

// 执行express函数,生成应用实例
const app = express();

// 定义路由
app.get('/', function(req, res){
  res.send({ page: 'home' })
})

app.get('/about', function(req, res){
  res.send({ page: 'About Us' })
})

app.get('/products', function(req, res){
  res.send([
    { id: 1, title: 'Product A' },
    { id: 2, title: 'Product B' },
    { id: 3, title: 'Product C' },
  ])
})

// 监听启动服务器
app.listen(3000, () => {
  console.log('App listening on port 3000!');
})
  1. node server.js 运行 不会监听文件更改,每次修改文件都需要重新运行

image.png

image.png

image.png

  1. nodemon运行 npm i -g nodemon安装nodemon,执行nodemon server.js 更改文件保存后会自动重启

二、静态文件托管

通过如下代码就可以将 public 目录下的图片、CSS 文件、JavaScript 文件对外开放访问

app.use('/static', express.static('public'))

现在,就可以通过带有 /static 前缀地址来访问 public 目录中的文件了

http://localhost:3000/static/images/kitten.jpg
http://localhost:3000/static/css/style.css
http://localhost:3000/static/js/app.js
http://localhost:3000/static/images/bg.png
http://localhost:3000/static/hello.html

三、CORS跨域请求

解决跨域问题

image.png

  1. 安装cors
npm install cors --save
  1. 使用cors
const cors = require('cors');
app.use(cors());

或者直接

app.use(require('cors')());