【问题标题】:Express route path not working in production快速路由路径在生产中不起作用
【发布时间】:2019-06-08 09:16:52
【问题描述】:

我是 Express 的新手。

我正在使用 Docker。

我正在使用 Caddy 将 /api/vision 代理到我在 :3000 监听的 Express 实例。

我正在尝试访问我在生产中的路线,但我收到了经典的“无法获取 ...”错误。我在开发中设置的相同环境没有此错误。

球童文件:

localhost:80 {  ## change to mydomain.app in production
  root frontend/ ## front end static files
  proxy /api/vision vision:3000 ## proxy to docker container
}

app.js:

const cors = require('cors');
const express = require('express');
const app = express();
const port = 3000;

app.use(cors());

app.get('/api/vision', (req, res) => {
  res.send({message: 'Hello World!'});
});

app.listen(port);

当我在我的开发机器上的本地主机上运行 Docker 时,这一切都很好。

它给了我前端,/api/vision 正确重定向到 :3000。

一旦我部署到我的生产机器,并向 mydomain.app/api/vision 发送请求,Express 就会给我:

Cannot GET /api/vision

Express 中有什么秘密的黑魔法吗?我在这里不知所措。我一定错过了什么,但我不知道去哪里找。

【问题讨论】:

    标签: http docker express routing


    【解决方案1】:

    我在同步文件时犯了一个严重的错误,现在问题已经解决了。谢谢你

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-07-19
      • 2016-10-03
      • 1970-01-01
      • 1970-01-01
      • 2016-03-31
      • 2019-08-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多