有东西在 nodejs express 项目中调用 POST /inform

use*_*312 1 node.js express

我有一个使用 express 的非常简单的 nodejs 项目。当我在本地启动这个项目时,我注意到有东西每 30 秒调用一次 POST 到 /inform。我想知道什么叫通知以及目的是什么。

我是节点的新手。这是正常的吗?我还没有为这个调用实现路由,所以它会导致 404。

这是我的主要应用程序:

const createError = require('http-errors');
const express = require('express');
const path = require('path');
const cookieParser = require('cookie-parser');
const logger = require('morgan');
const fileUpload = require('express-fileupload');

const app = express();

// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');

app.use(logger('dev'));
app.use(express.json());
app.use(express.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
app.use(fileUpload());

// routes
const indexRouter = require('./routes/index');
const usersRouter = require('./routes/users');
app.use('/', indexRouter);
app.use('/users', usersRouter);

// catch 404 and forward to error handler
app.use((req, res, next) => {
  console.log(req)
  next(createError(404));
});

// error handler
app.use((err, req, res) => {
  // set locals, only providing error in development
  res.locals.message = err.message;
  res.locals.error = req.app.get('env') === 'development' ? err : {};

  // render the error page
  res.status(err.status || 500);
  res.render('error');
});

// Start the server
const PORT = process.env.PORT || 8080;
app.listen(PORT, () => {
  console.log(`App listening on port ${PORT}`);
  console.log('Press Ctrl+C to quit.');
});
Run Code Online (Sandbox Code Playgroud)

在我的控制台中,我大约每 30 秒看到一次:

POST /inform 404 14.002 ms - 2158
POST /inform 404 13.910 ms - 2158
POST /inform 404 31.536 ms - 2158
Run Code Online (Sandbox Code Playgroud)

编辑:

谢谢你的意见。我将快速端口更改为 8000,但不再发生。因此,我本地机器上的某些内容正在循环并发布到 localhost:8080/inform。我得追查一下。

小智 6

我家里有一个 Ubiquity Unify 网络堆栈。在我的笔记本电脑上运行(并停止)Unifi 控制器后,我的所有 Unify 设备继续发送一个POST <laptop IP>:8080/inform.

我自己的应用程序记录了相同的未知路由:“/通知”错误。

解决方案:

  • 选择不同的端口
  • 将您的应用程序绑定到“localhost”而不是“0.0.0.0”
  • 获取专用控制器设备,例如 Raspberry Pi 或 Unifi Cloud Key