美文网首页
nodejs 实现 get、post 请求

nodejs 实现 get、post 请求

作者: 暴躁程序员 | 来源:发表于2023-05-11 14:18 被阅读0次

    1. 新建 http.js

    const http = require("http");
    const querystring = require("querystring");
    
    const server = http.createServer((req, res) => {
      // 获取请求的参数:method、path、query
      const { method, url } = req;
      const path = url.split("?")[0];
      const query = querystring.parse(url.split("?")[1]);
    
      // 设置返回数据格式
      res.setHeader("Content-type", "application/json");
    
      // 定义返回的数据
      const resData = {
        method,
        url,
        path,
        query,
        message: method === "GET" ? "hello get" : "hello post",
      };
    
      // 模拟 get 请求
      if (method === "GET") {
        res.end(JSON.stringify(resData));
      }
    
      // 模拟 post 请求
      if (method === "POST") {
        let postData = "";
        req.on("data", (chunk) => {
          postData += chunk.toString();
        });
        req.on("end", () => {
          res.end(JSON.stringify(resData));
        });
      }
    });
    
    // 监听端口
    server.listen(8000);
    console.log("http server OK");
    

    2. 测试 get 请求

    1. 在当前终端执行
    node http.js
    
    1. 在浏览器输入
    http://localhost:8000/api/user/manage?id=1
    

    结果

    {
        "method": "GET",
        "url": "/api/user/manage?id=1",
        "path": "/api/user/manage",
        "query": {
            "id": "1"
        },
        "message": "hello get"
    }
    

    3. 测试 post 请求

    1. 在当前终端执行
    node http.js
    
    1. 在 postman 接口测试工具中定义 post 接口,请求路径输入
    http://localhost:8000/api/login/manage?id=1
    

    结果

    {
        "method": "POST",
        "url": "/api/login/manage?id=1",
        "path": "/api/login/manage",
        "query": {
            "id": "1"
        },
        "message": "hello post"
    }
    

    相关文章

      网友评论

          本文标题:nodejs 实现 get、post 请求

          本文链接:https://www.haomeiwen.com/subject/ewyssdtx.html