如何使用node搭建一个http服务器?

有两种方式(现在主流是第二种)

一、在node中有一个核心模块,就是http模块。

二、在第三方的npm去下载一个koa模块,(koa模块就是在原生的http模块的基础上封装好的一个http服务器)

使用koa模块

1、下载:npm i koa -S

2、引入到文件中:var Koa = require("koa")

3、现在拿到的Koa是一个构造函数,用来实例化一个http服务器对象,

      let server = new Koa()

      现在才是一个http服务器对象

4、现在server服务器已经创建好了,但是前端无法访问它。

                server.listen(8080,"127.0.0.1",err=>{})

意思是:服务器监听IP及端口    -->127.0.0.1这是一个IP地址(一个服务器只有一个IP地址),8080是端口号

当前端有访问这个IP及端口时,当前的服务器就会做出响应。

5、启动http服务,在命令行中运行当前文件

6、如果向前端发送请求,使用server对象上的use方法。

  也就是说只要一次前端的请求发送到服务器就会自动触发use()方法的执行。

server.use((ctx,next)=>{

ctx.body="你好前端";

next()

})

*use()方法的参数只有一个,这个参数是一个函数,

这个函数有两个参数

①ctx->context->上下文->上传下答

前端向服务器发来的信息就叫上传,服务器向前端响应的信息就叫下答,

ctx是一个全局对象。

ctx是一个对象,包含了所有请求和响应的信息(是request和reponse的结合体)

例如:ctx.header()(获取我们的响应的头信息)

ctx.url()(获取请求的来源地址)

ctx.body()(给前端响应一段数据,并结束本次会话)

    ②next:请求是一个函数,如果我们的请求函数中有next()方法,

  那就可以把请求传递到下一个use()请求。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。