TypeError: Cannot read property 'vertices' of undefined
时间: 2023-06-29 12:12:56 浏览: 49
这个错误通常出现在尝试读取一个 undefined 或 null 值的属性时。根据错误信息来看,你的代码可能存在以下问题:
1. 请求体为空:在请求处理程序中,你尝试读取 `req.body.vertices` 属性,但是 `req.body` 的值为 undefined 或 null,因此无法读取 `vertices` 属性。这种情况通常出现在没有将请求体解析为 JSON 或表单数据的情况下直接读取 `req.body`。
解决方法:在 Express.js 应用程序中添加中间件,将请求体解析为 JSON 或表单数据。例如,你可以使用 `body-parser` 模块:
```javascript
const express = require('express');
const bodyParser = require('body-parser');
const app = express();
app.use(bodyParser.json()); // 解析 JSON 格式的请求体
app.use(bodyParser.urlencoded({ extended: true })); // 解析表单格式的请求体
```
2. 请求体格式不正确:如果请求体的格式不是 JSON 或表单数据,那么也无法正确地读取 `req.body` 属性。在这种情况下,`req.body` 的值可能是一个字符串或 Buffer 对象,无法直接读取属性。
解决方法:检查请求体的格式是否正确,如果不正确,则需要修改客户端代码以正确发送请求。
如果以上方法都没有解决问题,你可以尝试在请求处理程序中输出 `req.body` 的值,查看请求体的内容是否符合预期。