javascript - 如何用 express 发送102处理?

标签 javascript node.js express

我正在设置一个新的 HTTP 服务器来执行长命令并将该 shell 命令的响应返回给客户端。

我运行 Express v4.17.1。运行该命令时,客户端请求多次超时。 (我 app.use(cors()) 如果这有什么区别的话)。

    app.get("/dl", (req, res) => {
        require("child_process").exec("command -url".concat(req.query.url), (err, stdout, stderr) => {
            if (err || stderr) res.status(500).send(`err: ${err.message}, stderr: ${stderr}`);
            res.status(200).send(stdout);
        }
    });

当我尝试运行此命令时,浏览器会超时,因为它需要很长时间。如果我不能使用 102 处理也没关系,只是我想要另一个解决方案。谢谢!

最佳答案

我建议不要使用 HTTP 102。您可以阅读更多有关原因的信息:https://softwareengineering.stackexchange.com/a/316211/79958

我还强烈建议您使用查询参数来反对您当前的逻辑。有人可以注入(inject)将在服务器上执行的命令。

关于javascript - 如何用 express 发送102处理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56562975/

相关文章:

javascript - jQuery/css 不适用于 BigCommerce

javascript - 从桌面打开文件到弹出窗口

node.js - 在构建过程中找不到字形或别名的问题

javascript - 将 JS 代码从 NodeJS HTML 文件导出到 JS 文件

node.js - Azure 上托管的 Express 网站出现意外错误

javascript - 正则表达式提取相似字符组中的正值

javascript - ng-repeat 拒绝执行

node.js - 没有node.js的react-router

javascript - 在 Express 中将数组传递给 Jade/Pug 路由

mysql - 如何将sql server连接到app.js文件?