为什么postman没有问题,到了浏览器就不可以了
来源:9-4 编写前端页面上传文件

慕雪9296518
2020-09-09
{“stack”:“TypeError: Cannot read property ‘path’ of undefined\n at upload (D:\项目\服务端\test\controllers\upload.js:5:45)\n at dispatch (D:\项目\服务端\test\node_modules\koa-router\node_modules\koa-compose\index.js:44:32)\n at next (D:\项目\服务端\test\node_modules\koa-router\node_modules\koa-compose\index.js:45:18)\n at D:\项目\服务端\test\node_modules\koa-router\lib\router.js:346:16\n at dispatch (D:\项目\服务端\test\node_modules\koa-router\node_modules\koa-compose\index.js:44:32)\n at D:\项目\服务端\test\node_modules\koa-router\node_modules\koa-compose\index.js:36:12\n at dispatch (D:\项目\服务端\test\node_modules\koa-router\lib\router.js:351:31)\n at dispatch (D:\项目\服务端\test\node_modules\koa-compose\index.js:42:32)\n at allowedMethods (D:\项目\服务端\test\node_modules\koa-router\lib\router.js:407:12)\n at dispatch (D:\项目\服务端\test\node_modules\koa-compose\index.js:42:32)\n at dispatch (D:\项目\服务端\test\node_modules\koa-router\lib\router.js:332:32)\n at dispatch (D:\项目\服务端\test\node_modules\koa-compose\index.js:42:32)\n at D:\项目\服务端\test\app.js:47:9\n at dispatch (D:\项目\服务端\test\node_modules\koa-compose\index.js:42:32)\n at views (D:\项目\服务端\test\node_modules\koa-views\src\index.js:83:12)\n at dispatch (D:\项目\服务端\test\node_modules\koa-compose\index.js:42:32)\n at serve (D:\项目\服务端\test\node_modules\koa-static\index.js:53:15)\n at dispatch (D:\项目\服务端\test\node_modules\koa-compose\index.js:42:32)\n at logger (D:\项目\服务端\test\node_modules\koa-logger\index.js:67:13)\n at dispatch (D:\项目\服务端\test\node_modules\koa-compose\index.js:42:32)\n at filter (D:\项目\服务端\test\node_modules\koa-json\index.js:25:12)\n at dispatch (D:\项目\服务端\test\node_modules\koa-compose\index.js:42:32)”,“name”:“TypeError”,“message”:“Cannot read property ‘path’ of undefined”,“status”:
const Path = require(‘path’) //获取path模块以方便使用path.basenanem方法
class uploadCtl {
upload(ctx) {
const file = ctx.request.files.file
const basename = Path.basename(file.path)
//basename是文件名加拓展名(xxx.jpg)
//path.basename是path组件的方法把一个绝对路径换成一个basename形式
ctx.body = { url: ${ctx.origin}/uploads/${basename}
}
//path就是把整个url图片路径进去,并且是静态文件夹内的文件夹名+basename
}
}
module.exports = new uploadCtl()
1回答
-
lewis
2020-09-09
详细按照视频中的方法进行编写代码和测试。你肯定漏掉了哪一步
052020-09-09