我是Express的新手。
我正在使用Docker。
我正在使用Caddy将/ api / vision代理到我的Express实例,监听速度为:3000。
我正在尝试访问生产中的路线,但出现经典的“无法获取...”错误。在开发环境中设置的相同环境下,我没有此错误。
Caddyfile:
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);
当我在开发机器上的localhost上运行Docker时,一切正常。
它给了我前端,/ api / vision正确地重定向到:3000。
一旦我将其部署到生产机器上并向mydomain.app/api/vision发送请求,Express就会给我:
Cannot GET /api/vision
Express中是否存在一些秘密的黑魔法?我在这里茫然。我一定错过了一些东西,但我不知道在哪里看。
答案 0 :(得分:0)
同步文件时我犯了一个可怕的错误,现在问题已解决。谢谢