Express 请求数据的问题

发布于 2022-09-11 21:25:18 字数 506 浏览 9 评论 0

老师们好,我的问题如下,辛苦了,感谢!

const express = require('express');
const app = express();

// 1. 多次 GET 请求接口,每次都会返回一个随机数
// 2. 然后再进行 POST 请求,为什么得到的 a 都是第一次 GET 请求随机到的 a ?
// 解决:把变量 a 弄成全局变量就是对的了,但不清楚为什么会这样
app.get('/data', async function (req, res) {
    var a = Math.random()
    res.json({
        age: a
    });
    console.log(a);
    app.post('/data', function (req, res) {
        console.log(a);
        res.json({
            name: a
        });
    });
});

app.listen(3000);

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

浪菊怪哟 2022-09-18 21:25:18

是不是因为app.post()的定义只有第一次才生效,后来定义的都会被忽略,我瞎猜的

别念他 2022-09-18 21:25:18

js作作用域 第一次get生成的post请求 不会被后面的get覆盖 所以它一直保存的是第一次get请求中的a的值

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文