GET 请求 Nodejs 在本地主机上工作,但在我的服务器上不工作

GET Request Nodejs works on localhost but not on my server

我的 GET 请求在本地主机上有效,但在我的服务器上无效。 我用邮递员测试了它。 我的 Hostinger 是 OVH。 我的数据库也托管在 OVH 中,但它没有直接连接到服务器。 这是应用程序的代码:

const express = require('express')
const bodyParser = require('body-parser')
const mysql = require('mysql')
const { response } = require('express')

const app = express();

const PORT = process.env.PORT || 35707;

// My external DB mysql
const db_conn = mysql.createPool({
    connectionLimit : 10,
    host: 'Myhost',
    port: 35707,
    user: 'myUsername',
    password: 'Mypassword',
    database: 'mydb'
})

//this one works
app.get('/', (req, res) => {
    res.json({ test: 'test'});
});

// this one also works
app.get('/all.json', (req, res) => {
    db_conn.getConnection( (err, conn) => {
        if(err) throw err
        console.log(`connected as id ${conn.threadId}`)
        conn.query(
        "SELECT ID, [.....]", 
        (err, rows) => {
            conn.release()
            if(!err){
                res.send({"table": rows});

            }else {
                console.log(err);
            }
        })
    })
})

//this one works on localhost but not on the server
//I tested it with Postman
app.get('/id/:number/', (req, res) => {
    db_conn.getConnection( (err, conn) => {
        if(err) throw err
        console.log(`connected as id ${conn.threadId}`)
        conn.query("SELECT * FROM _posts WHERE ID=?", [req.params.number], (err, rows) => {
            conn.release()
            if(!err){
                res.send({"table": rows});
            }else {
                console.log(err);
            }
        })
    })
})

你知道这可能是什么原因吗? 谢谢

我也这样试过:

app.get('/endpoint', function(req, res) {
    var id = req.query.id;
    db_conn.getConnection( (err, conn) => {
        if(err) throw err
        conn.query("SELECT * FROM mod803_posts WHERE ID=?", [id], (err, rows) => {
            conn.release()
            if(!err){
                res.send({"table": rows});
            }else {
                console.log(err);
            }
        })
    })

});

它在本地主机上有效,但在服务器上无效。

解决方法,添加cors。

var cors = require('cors')

app.use(express.urlencoded({extended:true}));
app.use(cors())