04_NodeJS搭建服务器

框架:是一整套解决方案,简化了已有的功能,添加了之前没有的功能

1.express框架

 基于Node.js平台,快速、开放、极简的WEB开发框架

 网址:www.expressjs.com.cn

 属于第三方的模块,需要先去下载安装

   npm  install  express

const express = require('express');

const app = express();//创建WEB服务器

app.listen(8080); //设置端口

 (1)路由

  路由用来处理不同的请求,根据请求的URL和请求的方法来做出特定的响应。

  路由的三要素:请求的URL、请求的方法、回调函数

  req  请求对象

  req.url   获取请求的URL

  req.method   获取请求的方法

  req.query   获取查询字符串传递的数据

  res  响应对象

  res.send()  设置响应的内容并发送

  res.redirect()   设置响应的重定向并发送

  res.sendFile()   设置响应的文件并发送,文件必须使用绝对路径(__dirname)

以上响应在一个路由中只能调用一次

 练习:编写03_express.js,引入express,创建web服务器并设置端口为8080;添加路由(get  /search),响应文件search.html

  ‘<h2>用户搜索</h2>’

 练习:根据表单的请求添加路由(get  /mysearch),响应'搜索成功'

 练习:添加路由(get  /login),响应文件login.html

  

  练习:用户输入用户名和密码,点击提交;添加对应的路由(post  /mylogin),响应‘登录成功’

 

 

传递方式

格式

路由获取

get传递

查询字符串

http://127.0.0.1:8080/mysearch?kw=笔记本&id=2

req.query 格式为对象

post传递

采用流的方式,不可见

通过事件的方式

req.on('data', (chunk)=>{

  chunk 获取的数据,格式为buffer,转字符串后为查询字符串,需要借助查询字符串模块解析为对象

})

路由传参

http://127.0.0.1:8080/package/express

app.get('/package/:pname',(req,res)=>{

  req.params  获取路由传参的数据,格式为对象

})

 对比get和post传递数据的区别

  get传递的数据格式为查询字符串,URL中可见;post传递的方式用流的方式,URL中不可见;post传递更加安全,通常注册、登录会使用;get传递的速度更快,通常搜索的时候使用

  get传递的数据有大小限制,根据不同的浏览器大小不同,范围2~8k之间,post没有大小限制

 

 练习:创建添加到购物车的路由(get  /shopping),传递商品的编号lid、购买的数量count、用户的编号uid,最后响应以下内容

  商品的编号:xx

  购买的数量:xx

  用户的编号:xx

   /shopping/30&1&5

 

课后任务

 (1)复习今天内容,整理思维导图

 (2)练习:创建WEB服务器,设置端口,添加路由(get  /reg),响应注册的文件reg.html,点击提交向服务器发送请求(post  /myreg),创建路由接收请求,并获取传递的数据,响应“注册成功”

 (3)预习nodejs第5天   中间件、正则表达式

  

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Node.js可以用来搭建服务器,以下是一些步骤和代码示例: 1. 首先,你需要安装Node.js和Express框架。可以使用npm命令来安装它们。 2. 创建一个service.js文件,并在其中导入Express模块和创建一个Express应用程序的实例。 3. 使用app.listen方法来配置服务器的端口号,并启动服务器。 4. 可以使用app.get方法来定义GET请求的路由和处理函数。例如,可以创建一个'/api/list'的路由,当收到GET请求时,返回一个包含数据的JSON对象。 5. 可以使用app.post方法来定义POST请求的路由和处理函数。例如,可以创建一个'/api/setList'的路由,当收到POST请求时,将请求体中的数据存储起来,并返回一个包含存储数据的JSON对象。 6. 可以使用app.use方法来配置中间件。例如,可以使用express.static中间件来将静态文件部署到服务器上。 7. 最后,通过运行node service.js命令来启动服务器。 下面是一个示例代码: ```javascript const express = require('express'); const app = express(); app.use(express.static('img')); app.use(express.urlencoded({ extended: false })); app.get('/api/list', (req, res) => { res.send({ code: 200, data: \[{ name: 1 }, { name: 2 }, { name: 3 }\] }); }); app.post('/api/setList', (req, res) => { const newList = req.body; console.log(newList); res.send({ newList }); }); app.listen(9588, () => { console.log('服务器启动成功'); }); ``` 通过以上步骤和代码示例,你可以使用Node.js搭建一个简单的服务器,并处理GET和POST请求。 #### 引用[.reference_title] - *1* *2* [nodejs如何搭建服务器](https://blog.csdn.net/weixin_41472455/article/details/110274100)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [如何通过nodejs快速搭建一个服务器](https://blog.csdn.net/ct5211314/article/details/128282738)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值