处理get,post请求

在发送网络请求时,会有get请求,post请求

//引入http服务
const http = require('http')
//将字符串转化成一个对象
const querystring = require('querystring')

//初始化一个服务
const server = http.createServer((req,res) =>{
  const method = req.method  //获取请求方式,GET POST
  const url = req.url  //获取请求地址
  const path = url.split('?')[0]  //获取请求路径
  const query = querystring.parse(url.split('?')[1])  //获取请求参数

  //设置返回格式为 JSON
  //content-type:用于指定内容类型
  //set-cookie:用于在客户端创建一个cookie
  //Expires:用于指定缓存过期时间
  //res.setHeader('Access-Control-Origin','http://localhost')解决跨域问题
  res.setHeader('Content-type' , 'application/json')

  //返回的数据
  const resData = {
    method,
    url,
    path,
    query,
  }

  //判断请求种类,返回数据
  //1.get请求
  if(method === 'GET'){ 
    //res.end 
    res.end(
      //stringify将对象转化成字符串
      JSON.stringify(resData)
    )
  }
  //2.post请求
  if(method == 'POST'){
    let postData = ''

    //在post请求中会有数据发送到后台,用data在监控数据传输
    req.on('data', chunk => {
      postData += chunk.toString()
    })
	
	//监控数据传输完成
    req.on('end',() => {
      resData.postData = postData

      //用res(response)利用该对象发送服务器端响应流
      res.end(
        JSON.stringify(resData)
      )
    })
  }
})

//服务在本地3000端口开启
server.listen(3000)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值