JavaScript --Node,js

// 引用系统模块
const http = require(‘http’)
// 创建 web 服务器
const serve = http.createServer()
// 当客户端 发送请求的时候
server.on(‘require’,(req,res) =>{
// 设置响应头
res.writeHead(200,{
‘Content-Type’: ‘text/html;charset=utf8’
});
//设置响应体
res.write(‘

哈哈哈

’)
// 结束请求
res.end()
});
// 监听 3000 端口
server.listen(3000,error =>{
if(!error) {
console.log(‘服务器已启动, 监听3000端口, 请访问localhost:3000’);
}
})

http 协议
超文本协议, 用于 web 服务器 传输超文本到本地浏览器的传送协议. 基于客户端服务器架构工作

    请求报文
        请求方式
        请求报文

    响应报文'
        HTTP 状态码
        200 请求成功
        404 请求的资源没有找到

    请求参数
        客户端向服务器发送请求时, 有时需要携带一些客户信息, 比如登录. 客户信息需要通过参数的形式
        传递到服务器端

    路由
        路由就是指url 地址与 程序的映射关系, 更改URL 地址 可以改变程序的执行结果. 简单来说就是
        请求什么响应什么

     客户端的请求方式
      1. 浏览器地址栏
      2. Form表单提交
      3. link 标签的href 属性
      4.  script 标签的src 属性
      5.  image 标签的src 属性

     静态资源不需要 处理. 可以直接响应给客户端的资源就是静态资源, 例如css, JavaScript, image 文件

     使用Note.js 的第三方模块 serve-static 处理静态资源的响应 

     Node.js 工作原理

    Node 就是就异步 的应用程序. 在Note中  , 用一个线程 处理所有的请求,  当客户端 向服务器端发送请求时,
     服务器端  的一个线程 处理改请求, 在请求的过程中, 如果去查询或者读取文件, 该线程 不会等待 查询的
     结果, 转而去处理其他的请求, Note 程序 会监控数据库的查询结果, 如果查询完成, 该线程会重新回来
     处理该请求, Note 擅长处理高发并发的网络请求或者频繁的数据去读取应用程序, 不会 带来 
     硬件成本的增加,这种异步的模式显然有效的利用了现有的资源  

    Promiss的出现是为了解决Node.js 异步编程 回调地狱 的问题
    Promiss 本身是一个 构造函数, 要使用 promiss 解决回调地狱的问题 需要使用 new运算符创建Promiss
    的实例对象
    在创建的时候, 需要 传入一个匿名 函数 ,其中有两个 参数 resove. reject


    数据库
    数据库 即是 存储数据的仓库, 它是独立Note.js 之外的软件. 可以通过API 去操作它

    创建集合 实际上就是对集合设定规则
     
     创建文档
        创建文档实际上就是向集合中插入具体的数据

     模板引擎
        模板引擎可以让数据和HTML 模板更加友好的结合,  省去繁琐的字符拼接, 是代码更加易于维护
         高性能的JavaScript 模板引擎,使用 npm install art-template   命令下载


     Express 
        Express 是一个 Note平台的web 应用开发框架, 提供一系列强大特性, 帮助你创建Web应用

      安装
        使用 npm install express      

    框架特性

        1.提供了方便简洁的路由定义方式
        2.对获取 HTTP 请求参数进行了简化处理
        3. 对模板引擎 支持度极高. 方便 渲染动态 HTML 页面
        4. 提供了中间件的机制有效的控制HTTP请求
        5. 拥有大量第三方中间 件对功能进行扩展

    启动

           // 引入 Express 框架
           const  express = require('express');

           // 使用框架 创建 web 服务器
           cosnt app = express()

           // 程序监听 3000 端口
           app.listen(3000);

           app.get('/', (req, res) =>{
               // 对客户端做出响应  send 方法会根据内容的类型自动设置请求头
           }) 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值