ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

get和post方法服务器和客户端代码

2021-08-02 20:04:49  阅读:147  来源: 互联网

标签:const 请求 get res req http post data 客户端


一、get方法

服务器端代码:

//导入http、url模块
const http = require('http');
const url = require('url');
const queryString = require('querystring');

//创建get服务器
var server = http.createServer(((req, res) => {

    //对客户端的url进行解码
    let reqUrl = decodeURI(req.url);

    //将url字符串转换成url对象
    reqUrl = url.parse(reqUrl);

    //reqUrl = queryString.parse(reqUrl)
    let params = reqUrl.query.split('&');
    console.log(params[0]);

    res.end('提交成功!');
}));

//绑定并监听端口
server.listen(8080);

客户端代码:

//导入http模块
const http = require('http');

//设置请求的配置信息
const options = {
    hostname: '127.0.0.1',
    port: 8080,
    path: encodeURI('/index.html?age=12&stats=打开')
}

//创建get请求对象向服务器端发送get请求
var geter = http.get(options,res => {

    res.setEncoding('utf8');
    res.on('data',chunk => {
        console.log('响应信息:'+chunk.toString());
    })
})

geter.on('error',err => {
    console.log(err.message)
})

二、post方法

服务器端代码:

const http = require('http');
const queryString = require('querystring');

//创建post请求的服务器对象
var server = http.createServer((req, res) => {
    let data = '';// 'data'变量用来接收客户端向服务器发送的请求数据

    //参数'chunk'中存放的是客户端向服务器发送的请求数据,是二进制格式。在和变量'data'连接时自动转换为字符串
    req.on('data',chunk => {
        data = data+chunk;
    })

    //给请求对象'req'绑定'end'事件,当请求结束时会触发该事件
    req.on('end',()=> {
        data = decodeURI(data); //对请求数据进行解码
        console.log("请求数据:"+data);

        let dataObj = queryString.parse(data); //将请求数据转换为对象
        console.log("姓名:",dataObj.name);
        console.log('学历:',dataObj.title);
        res.end('提交成功!');
    })
});

server.listen(8080);

客户端代码:

const http = require('http');
const queryString = require('querystring');

//将要提交给服务器的数据转换为查询字符串(JSON格式数据)
var postData = queryString.stringify({
    'name':'关羽',
    'title':'博士'
})

//创建配置信息
var options = {
    hostname: '127.0.0.1',
    port: 8080,
    method: 'post'
}

//创建post请求对象
const req = http.request(options,res => {
    res.setEncoding('utf8');
    res.on('data',chunk => {
        console.log('响应数据:'+chunk.toString());
    })
});

//将请求数据写入到请求对象中
req.write(postData);

req.end(); //结束请求

标签:const,请求,get,res,req,http,post,data,客户端
来源: https://blog.csdn.net/Darlingmi/article/details/119332718

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有