我正在尝试让我的nodeapp 使用express 工作。
我已经通过 nginx 设置了反向代理以使用 https://dank.ml/api/v1但每当我启动我的应用程序时,它都不想检测 / 响应。
这是我的代码:
var express = require('express');
var app = express();
var def = {'details': 'Running API v1.0'};
app.get('/', function(req, res) {
res.send('Home');
});
app.listen(8080);
console.log('API is now running on: 127.0.0.1:8080');
这是我的配置:
server {
listen 80;
listen [::]:80;
index index.php index.html index.htm;
root /var/www/dank.ml/;
server_name dank.ml;
location /api/v1 {
proxy_pass http://127.0.0.1:8080;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
最佳答案
说的很清楚了
Cannot GET /api/v1
即传递给express的路径是/api/v1。
使用此配置:
location /api/v1/ {
proxy_pass http://127.0.0.1:8080/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
即location
和 proxy_pass
中的尾部斜杠。
source
关于javascript - Expressjs 无法检测响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34565669/