node.js+mysql+express搭建一个项目

1.使用node.js搭建服务

1.1创建http.js文件

// 第一步引入http服务 目的:搭建/开启本地服务器(让自己的电脑成为一台服务器)
const http = require("http")

// 第二步创建服务器 目的:前端请求这个服务,服务返回前端响应的数据
// http(超文本传输协议)是一个用于传输超文本到本地浏览器的协议
// 要创建http服务器(满足 Web 浏览器与 Web 服务器之间的通信需求)
// 需要使用http.createServer()方法
const server = http.createServer((req, res) => {
    // req--request 请求    res--response 响应

    // 设置HTTP响应的状态码为200,表示请求成功
    res.statusCode = 200
    // 设置HTTP响应头的Content-Type字段为"text/plain;charset=UTF-8",表示响应内容的类型为纯文本,字符集为UTF-8(可以避免中文乱码)
    res.setHeader("Content-Type", "text/plain;charset=UTF-8")
    // 在HTTP响应中结束并发送一段HTML内容"<h1>Hello World</h1>"到客户端
    res.end("<h1>Hello World</h1>")

})


// 监听端口号
server.listen(3000, "localhost", () => {
    // 会在3000端口号开启服务器,并且运行在localhost上
    console.log("服务器开启成功");
})

1.2第四步.在终端进入http.js文件中,然后运行http.js文件

1.3浏览器访问3000端口

2.Commonjs模块规范

js与js文件之间相互引用以及导出

2.1index01.js文件(用于导出使用)

// 数据资源
const obj = {
    use: "zhangsan",
    age: 18,
    habby: ["打篮球", "听音乐", "跑步"]
}

// 函数
function say() {
    console.log("hello world");
}


// 要想供别的文件使用,必须导出
// 直接导出obj
module.exports = obj

// 直接导出一个对象
module.exports = {
    obj: obj,
    name: "对象数据",
    say
}

2.2index02.js文件(用于引入使用)

// 使用index01.js里面的数据
// 要使用obj'先导入(文件后缀名可加可不加)
// 引入自己编写的文件需要加"./",内置的服务引入不需要加
const data = require("./index01")
console.log(data);

2.3在控制台运行index02.js文件

3.querystring库

用于解析和格式化网址查询字符串的实用工具 

例如某一个地址为:url?userName=zhangsan&password=123456,可以将该地址中的字符串拼接参数转为对象,也可以将对象转成字符串拼接


// 功能:接受用户输入的url地址,传递的参数

// 导入querystring库
const { log } = require("console");
const qs = require("querystring");
const { age } = require("./index01");

// 设置一个某认的url参数
let params = "useName=admin&password=123456"

// qs.parse()方法将查询字符串参数转换为JavaScript对象
const data = qs.parse(params)
console.log(data)
console.log(data.useName);

let params2 = {
    useName: "zhangsan",
    password: "123456",
    age: 18,
    sex: "男",
    hobby: ["打篮球", "踢足球"]
}

// qs.stringify()用于将对象序列化为查询字符串
console.log(qs.stringify(params2));

4.node.js模块url 

  4.1url模块提供了网址处理和解析的实用工具

// 导入url模块,请求url地址
// const url = require("url")

const { log } = require("console");

// 声明一个url地址
let address = "http://www.baidu.com:8080/api/banner?id=info"


// url.parse()方法将URL字符串解析为一个对象,第二个参数true表示解析查询字符串为对象
// 输出结果包含URL的各个组成部分,如协议、主机、路径、查询参数等
// console.log(url.parse(address, true))
// 输出查询参数部分的值
// console.log(url.parse(address).query);




// 新方法
const myUrl = new URL(address)
console.log(myUrl);
log(myUrl.searchParams.get("id"))

5.npm常用的命令

  • npm -v  : 查看npm当前的版本号
  • npm init : 初始化项目(会创建package.json文件)
  • npm install 模块名称 : 下载模块(简写: npm i 模块名称)
  • npm install 模块名@版本号 : 下载指定版本号的模块
  • npm install --global 模块名称 : 下载全局的模块(类似于下载电脑中,无论项目在那个文件中都可以使用,简写: npm i -g  模块名称)
  • npm uninstall 模块名 : 卸载模块
  • npm update 模块名 : 更新模块
  • npm uninstall 模块名@版本号 : 卸载模块(带版本号)

6.自动更新node.js代码

6.1安装nodemon包(全局)

npm i nodemon -g

6.2运行node.js文件(文件内容发生改变,会自动更新运行)

nodemon index.js

7.安装cnpm 

npm服务器在国外,下载速度比较慢,可以使用cnpm,cnpm是淘宝镜像,服务器在国内,下载速度快

7.1安装cnpm

npm install -g cnpm --registry=https://registry.npm.taobao.org 
遇到SSL证书问题,可以尝试更新你的系统证书,或者暂时禁用 SSL 严格验证

如果要禁用,可以使用以下命令:
   npm config set strict-ssl false
 再重新安装cnpm:
npm install -g cnpm --registry=https://registry.npm.taobao.org
安装完 cnpm 后,记得重新启用 SSL 验证:
npm config set strict-ssl true

7.2测试安装cnpm是否安装成功

cnpm -v

 7.3安装依赖

项目中node_modules文件中包含了所有的依赖,可以在package.json里面查看所有的依赖信息,当使用别人的项目,或者自己项目中没有node_module文件时,可以使用 cnpm i 命令来安装

8.express---接口 

8.1stu.js学生信息文件


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值