node.js中的get/post请求

node是运行在服务端的javaScript语言,用户向服务器发送请求就要用到get/post方法

获取get请求的内容

get请求被嵌入在路径中,我们可以通过手动解析url来获取get请求的参数

我们通过form表单来发送获取到的信息

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<form action="http://127.0.0.1:3000/" method="get">
    <input type="text" name="name">
    <input type="text" name="number">
    <button>Send</button>
</form>
</body>
</html>

在终端运行下边的js代码文件


parse函数的作用是解析url,返回一个json格式的数组

var http = require('http');
var url = require('url');
var util = require('util');

http.createServer(function(req, res){
    res.writeHead(200, {'Content-Type': 'text/plain'});

    // 解析 url 参数
    var params = url.parse(req.url, true).query;
    res.write("name:" + params.name);
    res.write("\n");
    res.write("number:" + params.number);
    res.end();

}).listen(3000);

然后在浏览器中运行并输入信息


点击send按钮



将HTML中的方法改成method="post"

获取post请求内容

POST请求的内容全部的都在请求体中,所有node.js 默认是不会解析请求体的,当需要的时候,需要手动来做

var http = require('http');
var querystring = require('querystring');
var util=require('util');

http.createServer(function (req, res) {
    var body = "";
    req.on('data', function (chunk) {
        body += chunk;
    });
    req.on('end', function () {
        // 解析参数
        body = querystring.parse(body);
        // 设置响应头部信息及编码
        res.writeHead(200, {'Content-Type': 'text/html; charset=utf8'});

        if(body.name && body.number) { // 输出提交的数据
            res.write("yourName:" + body.name);
            res.write("<br>");
            res.write("number:" + body.number);
        }
        res.end();
    });
}).listen(3000);

由于get方法发送的信息是暴露在外的,密码等具有保密性质的信息不使用get方法发送

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,088评论 19 139
  • 同步请求可以从因特网请求数据, 一旦发送同步请求,程序将停止用户交互,直至服务器返回数据完成, 才可以进行下一步操...
    小灬博阅读 4,371评论 2 4
  • 个人入门学习用笔记、不过多作为参考依据。如有错误欢迎斧正 目录 简书好像不支持锚点、复制搜索(反正也是写给我自己看...
    kirito_song阅读 7,274评论 1 37
  • 写在前面的话我们在使用Ajax时,当我们向服务器发送数据时,我们可以采用Get方式请求服务器,也可以使用Post方...
    萝莉薇阅读 7,741评论 0 1
  • 知鸟歇斯底里的叫着,麻雀在树梢上蹿下跳,蔚蓝的天空没有一丝云朵,火热的太阳炙烤着训练场,今日练车的人不多。大多数上...
    千古花蕊阅读 1,391评论 0 1

友情链接更多精彩内容