javascript - 从临时 express 服务器返回值

标签 javascript node.js express

我正在编写一个需要使用服务进行外部身份验证的应用程序。为此,我使用 express监听重定向并获取我需要的数据。但是,我想将该数据返回到主范围。这是我到目前为止所拥有的:

const authorize = () => {
    app.get('/', (req, res) => {
        res.status(200).send('<script>window.close()</script>')
        return req.query.code;
    });

    app.listen(3000, () => {
        console.log('listening');
    });
}

const code = authorize();

req.query.code是我需要的数据,我想从authorize()返回它。相反,我得到 undefined 。完成我想要的事情的最佳实践是什么?

最佳答案

通过返回 Promise 修复了该问题。

const authorize = () => {

    return new Promise((resolve, reject) => {
        app.get('/', (req, res) => {
            res.status(200).send('<script>window.close()</script>')
            resolve(req.query.code);
        });

        app.listen(3000, () => {
            console.log('listening');
        });
    })
}

关于javascript - 从临时 express 服务器返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44894980/

相关文章:

javascript - 在弹出窗口中隐藏网址

javascript - 加载 jQuery 后如何访问 stub 美元函数?

node.js - 在 Heroku 上使用 TypeScript 和 React 应用程序托管 Express 时出现的问题

node.js - 无法使用 Node.js mqtt 库连接到 Eclipse Mosquitto 代理

node.js - 如何使用mongoose插入嵌套文档帖子有很多评论,评论有很多回复

javascript - ES6 map : transform values

javascript - 在 JavaScript 中设置 HTML <label> 'for' 属性

node.js - 无法在 node.js 中发出此特定的 http 补丁请求

javascript - 在 NodeJS 上跨页面请求维护后端连接?

javascript - 如何调试 node.js React Express 应用程序