TSLint 抱怨 'Express bodyParser is deprecated'
TSLint complaining that 'Express bodyParser is deprecated'
如何消除警告bodyParser is deprecated. (deprecation)tslint(1)
我真的不想禁用下一行,有没有更好的方法?
这是我的index.ts
import { app } from './app';
import * as dotenv from 'dotenv';
dotenv.config();
const hostname = process.env.HOST;
const port = process.env.PORT;
app.listen(port, () => {
console.log(`Server running at http://${hostname}:${port}/`);
});
这是app.ts
import express, { Application } from 'express';
import bodyParser from 'body-parser';
import { routes } from './routes';
export const app: Application = express();
app.use(bodyParser.json()); // bodyParser is deprecated. (deprecation)tslint(1)
routes(app);
您可以通过在 tslint.json 文件
中将 "deprecation"
键设置为 false
来禁用此 tslint 规则
示例 tslint.json 文件:
{
"deprecation": false
}
但是请注意,这将禁用每一个弃用通知。如果您只想禁用下一行的弃用通知,您可以使用带有规则名称的注释标志。
// tslint:disable-next-line:deprecation
app.use(bodyParser.json());
routes(app);
我建议您使用 express
本身的内置正文解析器库,除非您有充分的理由使用自 2019 年以来已弃用的 body-parser
。
而不是:
app.use(bodyParser.json());
简单做
app.use(express.json());
另外在旁注中,tslint
也已弃用。现在,即使使用打字稿,您也应该使用 eslint
:)
不要再使用 body-parser
如果您使用的是 Express 4.16+,正文解析功能已作为内置的 express 提供
您使用
app.use(express.urlencoded({extended: true}));
app.use(express.json()) // To parse the incoming requests with JSON payloads
从直接表达
因此您可以使用 npm uninstall body-parser
卸载 body-parser,然后使用 express 方法即可。
如何消除警告bodyParser is deprecated. (deprecation)tslint(1)
我真的不想禁用下一行,有没有更好的方法?
这是我的index.ts
import { app } from './app';
import * as dotenv from 'dotenv';
dotenv.config();
const hostname = process.env.HOST;
const port = process.env.PORT;
app.listen(port, () => {
console.log(`Server running at http://${hostname}:${port}/`);
});
这是app.ts
import express, { Application } from 'express';
import bodyParser from 'body-parser';
import { routes } from './routes';
export const app: Application = express();
app.use(bodyParser.json()); // bodyParser is deprecated. (deprecation)tslint(1)
routes(app);
您可以通过在 tslint.json 文件
中将"deprecation"
键设置为 false
来禁用此 tslint 规则
示例 tslint.json 文件:
{
"deprecation": false
}
但是请注意,这将禁用每一个弃用通知。如果您只想禁用下一行的弃用通知,您可以使用带有规则名称的注释标志。
// tslint:disable-next-line:deprecation
app.use(bodyParser.json());
routes(app);
我建议您使用 express
本身的内置正文解析器库,除非您有充分的理由使用自 2019 年以来已弃用的 body-parser
。
而不是:
app.use(bodyParser.json());
简单做
app.use(express.json());
另外在旁注中,tslint
也已弃用。现在,即使使用打字稿,您也应该使用 eslint
:)
不要再使用 body-parser
如果您使用的是 Express 4.16+,正文解析功能已作为内置的 express 提供
您使用
app.use(express.urlencoded({extended: true}));
app.use(express.json()) // To parse the incoming requests with JSON payloads
从直接表达
因此您可以使用 npm uninstall body-parser
卸载 body-parser,然后使用 express 方法即可。