Week-8 后端 Homework
1. 背景
大家逛街时,新人宁宁提出了一个疑惑:“海子姐,如果用户上传了新头像,我们是不是要删除旧的头像文件呢?不然服务器会堆积很多无用的图片。” 海子意识到了自己的疏忽,她接下来的任务就是实现这个功能。
2. 开发要求
本次作业要求学生在现有的头像上传功能基础上,加入删除旧头像的功能。具体要求如下:
删除旧头像功能:
- 当用户上传新的头像时,检查该用户是否已有旧头像。
- 如果有旧头像,删除旧头像文件。
- 只保留最新上传的头像。
提示:
- 在删除文件时,请确保文件路径正确,且文件存在。
- 上传新头像时,不需要再次保存用户名,只需要更新文件路径。
- 或许可以使用
fs.unlink
方法来删除旧头像文件。 - 当用户上传新头像时,更新数据库记录,确保文件路径是最新的。
4. 思考题
防止用户绕过前端的文件类型限制:虽然前端可以限制文件类型,但用户可以通过开发者工具绕过这些限制。你认为后端如何才能有效防止恶意文件上传?