最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

不推荐使用的正文解析器扩展:提供扩展选项

运维笔记admin8浏览0评论

不推荐使用的正文解析器扩展:提供扩展选项

不推荐使用的正文解析器扩展:提供扩展选项

尝试运行我的代码,但我真的不知道如何解决它时,出现此错误。我不是很了解代码库,因为我是新手,所以我完全迷路了,不知道该怎么办。

body-parser deprecated undefined extended: provide extended option index.js:20:20
COMMON_CONFIG.mode === "development" false
Listening on port undefined

编辑:package.json:

**{
  "name": "audio-guide-backend",
  "version": "0.0.0",
  "main": "index.js",
  "repository": ".git",
  "license": "MIT",
  "private": true,
  "scripts": {
    "start": "node index.js",
    "dev": "nodemon index.js"
  },
  "dependencies": {
    "crypto-random-string": "^3.0.1",
    "dotenv": "^8.0.0",
    "ejs": "^2.6.2",
    "express": "^4.17.1",
    "express-session": "^1.16.2",
    "pg": "^7.11.0"
  },
  "devDependencies": {
    "nodemon": "^1.19.1"
  }
}
**

编辑2:这是我的index.js的样子:

require("dotenv").config();
const express = require("express");
const http = require("http");
const session = require("express-session");
const bodyParser = require("body-parser");
const { SERVER_CONFIG } = require("./config");

const app = express();

const server = http.createServer(app);

app.set("view engine", "ejs");

app.use(express.static("public"));
app.use((req, res, next) => {
  // if (req.url === "/api/login") console.log(req);
  next();
});
app.use(express.json());
app.use(bodyParser.urlencoded());
app.use(
  session({
    secret: "keyboard cat",
    resave: false,
    saveUninitialized: true
  })
);

// ROUTES
require("./routes")(app);

// NOT FOUND
app.use(function(req, res, next) {
  res.status(404);

  res.format({
    html: function() {
      res.render("404");
      // res.render("404", { url: req.url });
    },
    json: function() {
      res.json({ message: "Not found" });
    },
    default: function() {
      res.type("txt").send("Not found");
    }
  });
});

// INTERNAL ERROR
app.use(function(err, req, res, next) {
  res.status(err.status || 500);
  res.format({
    html: function() {
      res.render("500");
    },
    json: function() {
      res.json({ message: "server error: " + err.message });
    },
    default: function() {
      res.type("txt").send("server error: " + err.message);
    }
  });
  res.send("server error: " + err.message);
  /*res.render("500", {
    message:
      COMMON_CONFIG.mode === "development"
        ? err.message
        : "Internal server error"
  });*/
});

server.listen(SERVER_CONFIG.port, err => {
  if (err) {
    console.log("Error occured");
  } else {
    console.log(`Listening on port ${SERVER_CONFIG.port}`);
  }
});

似乎我的帖子主要是代码,所以我要添加更多详细信息。

回答如下:

Listening on port undefined

这意味着您没有设置端口。我看到您使用的是dotenv,因此首先要检查的是根目录中的.env文件。如果未创建,请添加并添加index.js中引用的环境变量的名称。可能是PORT

[下一步,您将要查看传递给express.json()的选项或要调用的任何body-parser函数。它还向其中传递了undefined

检查您的.env文件或系统环境变量,然后添加所需的那些。

发布评论

评论列表(0)

  1. 暂无评论