菁英数字科技(猩码)-猩码学苑-专注软件开发人才菁英教育
标题: 李扬敏-20221206-node [打印本页]
作者: 王源的李可爱 时间: 2022-12-6 23:46
标题: 李扬敏-20221206-node
一.今日学习内容
1.服务器
硬件: 超级计算机
系统软件: windows、Linux、Mac
应用软件:Apache、MySQL
web服务器: 提供网站服务
常见: Apache、Nginx、node
web服务器也能叫 http/httpd 服务器
2.phpstudy
集成环境,包含 Apache 和 MySQL
3.url地址
http://127.0.0.1/todolist/index.html
4.网络基础
IP地址
是为计算机网络相互连接进行通信而设计的协议
4段3位数字来表示,取值范围 0-255
域名
www.taobao.com
DNS服务器(域名服务器)
将域名转换为IP地址,
端口号: 计算机中软件的标号
端口号的取值范围: 0-65535
5.C/S 和 B/S
client/server
核心特点:要下载一个客户端
服务器主要做数据转发工作。
C/S的优势: 客户端功能强大
C/S的劣势: 必须下载客户端非常麻烦,升级维护麻烦
browser/server
核心特点:使用浏览器(Chrome、Firefox等)进行操作
服务器承担了所有业务,浏览器只是用来显示最终内容的。
B/S的优势: 部署方便,容易维护。用户使用方便(一个浏览器即可)。
B/S的劣势: 客户端功能简单
6.Node
使用 Chrome v8 引擎制作的一款 ECMAScript 运行时环境
有了Node之后,js代码就能运行在服务器端了
nodejs的特点:
事件驱动
非阻塞 IO(异步) 模型
单线程
跨平台(window\linux\unix\mac)
Nodejs和浏览器中js的区别
浏览器中js组成: ES核心 + DOM + BOM
Nodejs中js组成: ES核心 + 全局成员(全局对象) + 模块系统(系统模块、第三方模块、自定义模块)
组成: ECMAScript 、 全局成员、 模块系统(系统模块、第三方模块、自定义模块)
命令行: cmd powershell
终端运行:node xxx.js
cd: 切换目录
dir \ ls:查看目录下所有文件和目录
在类unix操作系统中只能使用 ls (类unix:unix、Linux、Mac、
Android)
cls \ clear:清屏
在类unix操作系统中只能使用 clear
exit:退出
7.fs-文件系统模块(filesystem)
文件读取(readFile)
fs.readFile(var1, var2, var3);
参数1: 要读取的文件路径 --- 相对路径和绝对路径均可,推荐使用绝对路径
参数2: 配置项,主要用来配置字符集。可选参数。如果不设置该参数,文件内容会以二进制形式返回
参数3: 读取完成后触发的回调函数,有两个参数 --- err 和result
读取成功:err: null;result: 文件内容,如果不设置参数2,则返回二进制数据。可以使用 toString() 方法将二进制数据转为正常字符串
读取失败:err: 错误对象;result: undefined
文件写入(writeFile)
fs.writeFile(var1, var2, var3, var4);
参数1: 要写入的文件路径 --- 相对路径和绝对路径均可,推荐使用绝对路径
参数2: 要写入文件的字符串
参数3: 配置项,设置写入的字符集,默认utf-8
参数4: 写入完成后触发的回调函数,有一个参数 --- err (错误对象)
文件追加(appendFile)
fs.appendFile(var1, var2, var3, var4);
同writeFile
8.使用http模块搭建Web服务器
创建Web服务器4步骤:
1) 加载/导入/引入 http 模块
const http = require('http');
2) 创建服务器对象
const server = http.createServer();
3) 启动服务器,并监听端口
server.listen(3000, () => {
console.log('Server is running...'); });
4) 监听浏览器请求并进行处理和响应
server.on('request', (req, res) => {
res.end('Hello Nodejs'); });
end方法能够将数据返回给浏览器,浏览器会显示该字符串
参数1: 事件类型, request代表浏览器请求事件
当监听到浏览器请求后触发的回调函数,该函数中有两个参数 req和res
9.req.url 保存浏览器请求的地址
不包含,协议、ip、端口号
必须以 / 开头
10.中文乱码问题
res.setHeader('content-type','text/html;charset=utf-8');
欢迎光临 菁英数字科技(猩码)-猩码学苑-专注软件开发人才菁英教育 (http://www.xingmaxueyuan.com/) |
Powered by Discuz! X3.4 |