【问题标题】:Node JS Cannot Get /节点 JS 无法获取 /
【发布时间】:2018-01-19 23:18:37
【问题描述】:

我正在关注this Node JS 教程,但我遇到了一个问题,我得到的是Cannot GET / 而不是Hello 的响应。这是我的代码的结构:

myapp/
├── app
│   └── routes
│       ├── index.js
│       └── note_routes.js
├── conf
│   ├── httpd-app.conf
│   └── httpd-prefix.conf
├── htdocs
├── node_modules
│   ├── ...
├── package.json
├── package-lock.json
└── server.js

server.js 看起来像这样:

const express = require('express');
const MongoClient = require('mongodb').MongoClient;
const bodyParser = require('body-parser');

const app = express();

const port = 3000;

require('./app/routes')(app, {});
app.listen(port, () => {
  console.log('We are live on ' + port);
});

index.js是这个:

const noteRoutes = require('./note_routes');
module.exports = function(app, db) {
  noteRoutes(app, db);
  // Other route groups could go here, in the future
};

note_routes.js 看起来像这样:

module.exports = function(app, db) {
  app.post('/notes', (req, res) => {
    // You'll create your note here.
    res.send('Hello')
  });
};

可以看出,这是一个非常简单的设置。根据上面链接的教程,这应该足够了,应该回复Hello。然而,这种情况并非如此。

我几乎 100% 确定端口是正确的,因为有 一些 非 503 响应。

这里出了什么问题,我怎样才能让它按预期工作?

【问题讨论】:

  • 你必须使用 POST 而不是 GET
  • @DZDomi,note_routes.js 中的app.post(...) 不这样做吗?我在哪里使用 get?
  • 将 app.post 行改为 app.get 即可在浏览器中调用
  • 或者如果您使用的是邮递员(在教程中使用),您必须将下拉菜单中的 HTTP 方法从 GET 更改为 POST(取决于您想要什么)
  • 并学习不同的http方法:developer.mozilla.org/en-US/docs/Web/HTTP/Methods

标签: javascript node.js server


【解决方案1】:

你在 note_routes 中的 app.post() 应该是 app.get() 或者如果你打算发出 post 请求,那么你可以像这样链接它

app.post()
   .get();

【讨论】:

  • Here 是教程中的一张图片,详细说明了我应该在 Postman 中与该代码交互的方式。他们在做什么而我不是?
  • 它应该与帖子一起使用。 Post 可以返回响应数据。
  • @stone,哦,这是一个愚蠢的错误。我没有意识到消息的类型是 post not get。我也没有意识到 post 可以返回数据
  • 错误是could not GET/表示你发出了GET请求。
  • @RickyM,如何将 URL 转换为 POST 请求? Postman 只需要我选择该选项,但当我这样做时它使用的实际 URL 是什么?
【解决方案2】:

这在一个全新的层面上是错误的。

我想你是用node server.js启动你的服务器

首先,server.js 在任何地方都不需要 index.js

note_routes 应该包含 .get() 而不是 .post()

在您的浏览器中,您应该访问 http://localhost:3000/notes 而不是普通的旧 http://localhost:3000

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-06-14
    • 2020-11-22
    • 1970-01-01
    • 1970-01-01
    • 2021-05-23
    • 2017-05-18
    • 1970-01-01
    相关资源
    最近更新 更多