错误 404 无法获取 API 节点 js 和 mysql

error 404 cannot get api node js and mysql

提问人:Manuella 提问时间:11/17/2023 最后编辑:Manuella 更新时间:11/17/2023 访问量:41

问:

为了尝试解决我的问题,我更换了 这段代码

app.get('/', (req, res, next)=>{
        res.json({msg: 'Welcome to your book2life api !', status: 200})
    })

通过这个

app.get('book2lifeapi.book2life.fr/', (req, res, next)=>{
        res.json({msg: 'Welcome to your book2life api !', status: 200})
    })

我认为这不公平,因为这种情况仍然存在。谁能向我解释我应该怎么做?这是出现的完整错误:无法加载资源:服务器响应状态为 404 () book2lifeapi.book2life.fr/:1

https://www.book2lifeapi.book2life.fr 是我的 URL API

http-status-代码-404

评论

0赞 Shadow 11/17/2023
Http 404 错误表示在服务器上找不到请求的 URL。这更有可能指示 Web 服务器和 Web 应用程序的配置方式存在问题,而不是应用程序代码或数据库的问题。应用程序代码可能会生成 404 响应,但它将是一段显式代码(类似于在代码中生成状态 200 响应的方式)。您需要检查 Web 服务器的日志,以查看请求了哪些 URL 导致了 404 错误消息。
0赞 Manuella 11/17/2023
非常感谢。我会听从你的建议

答:

0赞 SS87 11/17/2023 #1

您正在尝试从以下行中的 Express 实例创建 HTTP 服务器。

const app = express();
const http = require('http');
let server = http.createServer(app); 

如果您使用的是 Express,则无需创建 HTTP 服务器;Express 实例是 HTTP 模块本身之上的抽象。从上面的代码块中删除第 2 行和第 3 行。

在代码末尾,将“server”更改为“app”。顺便说一句,app.listen 调用是 Express 模块创建自己的“http.createServer”实例的地方。

app.listen(PORT, ()=>{
    console.log('listening port: '+PORT);
})

查看 ExpressJS 网站上的入门代码: https://expressjs.com/en/starter/hello-world.html

评论

0赞 Manuella 11/17/2023
感谢您的回复。这是我最初尝试的代码,它显示当我在 cPanel 上时我无法获取 /。在本地,我的 api 按照您所说的工作没有问题,但是当我尝试奇怪地将其放到网上时,它不起作用。我的数据库连接良好,但服务器不工作。我真的看不出问题可能来自哪里。