前端知识点小结--mongodb

这篇博客总结了前端开发中关于Node.js的GET、POST请求,介绍了Express框架的基本概念和使用,包括静态资源读取。接着详细讲解了MongoDB数据库的使用,以及如何进行数据库的增删改查操作。最后提到了HTTP无状态与Cookie的概念,并展示了如何在Node.js中设置和获取Cookie。
摘要由CSDN通过智能技术生成

1、node–get、post请求

index.html代码:

<!DOCTYPE html>
<html lang="en">
	<head>
		<meta charset="UTF-8">
		<title>Document</title>
		<link rel="stylesheet" href="css/index.css">
	</head>
	<body>
		<h1>这是登录页面</h1>
		<!-- 默认是get请求 -->
		<!-- get和post区别?
			get请求参数在url内部  请求参数可见
			post不可见,请求速度比较慢
			action请求地址
		 -->
		<!-- <form action="http://localhost:8989/submit" method="get">
			如果是form直接提交数据,前端一定要有name值,才可以发送数据给后台 
			name相当于前后端接口
			<input type="text" placeholder="请输入用户名" name="user"><br><br>
			<input type="password" placeholder="请输入密码" name="pass" ><br><br>
			<input type="submit">
		</form> -->
		<form action="http://localhost:8989/submit" method="get">
			<input type="text" placeholder="请输入用户名" name="user"><br><br>
			<input type="password" placeholder="请输入密码" name="pass" ><br><br>
			<input type="submit">
		</form>
		<a href="">登录</a>
	</body>
</html>

get请求:

js代码:

const http=require('http');
const fs=require('fs');
const path=require('path');
const url=require('url');
// 引入读文件的模块
const readfile=require('readfile');

//建立服务器
let server=http.createServer((req,res)=>{
   
	if(req.url=='/favicon.ico') return;
    //如果浏览器地址输出form打开
	if(req.url.startsWith('/form')){
   
    //则通过路径读取内容
		readfile(__dirname,req,res);
			
	}else if(req.url.startsWith('/submit')){
   
		// get请求的参数,在url内部,所以需要解析url 需要url模块
		// url模块专门用来处理地址
		// url.parse(地址,true)可以把地址解析为对象;true可以把存储参数的query转化为对象

		// 前端传递过来的数据
		console.log(url.parse(req.url,true).query);
		let params=url.parse(req.url,true).query;

		// 发送的数据只能是字符串
		res.end(`用户名是${
     params.user}密码是${
     params.pass}`);
	}else{
   
		res.end('404');
	}
})

server.listen('8989')

在cmd中运行js
在这里插入图片描述
打开inde.html,点击提交
在这里插入图片描述
跳转得到
在这里插入图片描述

post请求

首先修改index.html代码

	<form action="http://localhost:8989/submit" method="post">

post的js代码:

const url=require('url');
const querystring=require('querystring')
// 引入读文件的模块
const readfile=require('readfile');

let server=http.createServer((req,res)=>{
   
	if(req.url=='/favicon.ico') return;

	if(req.url.startsWith('/form')){
   

		readfile(__dirname,req,res);
			
	}else if(req.url.startsWith('/submit')){
   
		// post请求发送数据的时候,是一段段发送
		// data事件,监听接收的数据
		// 一般测试不出来。
		var allData='';
		req.on('data',(chunk)=>{
   
			allData+=chunk;
		})

		// end事件 数据接收完的时候执行
		req.on('end',()=>{
   
			// allData得到的是k=v&k=v形式的数据  使用querystring转化 querystring.parse()可以把类似k=v&k=v的字符串转化为对象
			console.log(querystring.parse(allData));
			res.end(`用户名是${
     allData.user}密码是${
     allData.pass}`);
		})
	}else{
   
		res.end('404');
	}
})

server.listen('8989')

按步骤运行即可

两个js文件整合起来:

const readfile=require('readfile');
const http=require('http');
const url=require('url');
const querystring=require('querystring')
// 创建服务器
let server=http.createServer((req,res)=>{
   
	if(req.url=='/favicon.ico') return;
	// 处理get或者post请求
	// 如果是post请求的时候,query参数为空
	if(req.url.startsWith('/form')){
   
		readfile(__dirname,req,res);

		return;
	}
	if(url.parse(req.url,true).query
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值