手记

【九月打卡】第4天 前端工程师 Node.js基础

每天一遍,防止颓废。


课程名称:前端工程师2022
课程章节:Node.js基础入门 2161
讲师:双越
课程j介绍:

本课程重点介绍服务端开发和前端开发思路上的区别,为后续的服务端开发做一个基础的铺垫。


课程内容

【第1章】
双越老师先给我们讲了这门课的阶段内容的课程安排。

认识req和res

手写server

const http = require('http')
const server = http.createServer(() => {
    console.log('已接收到http请求');
})
server.listen(3000)
console.log('server启动成功 http://127.0.0.1:3000');

npm

npm init
npm i nodemon --save-dev

package.json

{
  "name": "test2",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "dev":"nodemon index.js"
  },
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "nodemon": "^2.0.19"
  }
}
  • nodejs如何监听https请求
const http = require('http')

const server = http.createServer(() => {
    console.log('已接收到http请求');
})

// 监听端口号
server.listen(3000)
  • 如何拿到req和res

req即Request,res即Response,是http请求的关键

// 传两个参数
const server = http.createServer((req,res) => {
  // 返回信息给前端
  res.end('Hello Word');
})
  • 如何使用req和res

req.url:返回前端访问的url

res.end():返回内容给前端

路由

路由和url

  • GET/api/list路由-> axios.get(’/api/list?a=1’)

  • POST/api/create路由->axios.get(’/api/create’,{…})

  • 路由是规则,url是具体形式

定义一个路由

  • 从req中获取url和method

  • 判断method是否符合

  • 看url是否符合

const http = require('http')
// 传两个参数
const server = http.createServer((req, res) => {
    const url = req.url;
    const path = req.url.split('?')[0]
    const method = req.method;
    // 模拟获取留言列表
    if (path == '/api/list' && method == 'GET') {
        res.end('api')   
    } else {
        res.end('404')
    }
    // 模拟创建留言
    if (path == '/api/create' && method == 'POST') {
        res.end('Create')
    } else {
        res.end('404')
    }
})

测试POST路由需要借助工具-postman
网址:https://www.postman.com/



心得体会

双越老师给我们讲了如何获取http请求,Request请求,Respond返回,如何监听请求巧妙的应用res.end,req.url,req.method来判断做路由来判断返回的内容,开始有点难了起来,然后今天学习有点晚,明天继续接着冲

0人推荐
随时随地看视频
慕课网APP