一.今日学习内容 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');
|