在进行了后端删除留言代码编写后,前端进行删除留言时,未发送del路由请求,提示以下信息,是什么原因呢?

在进行了后端删除留言代码编写后,前端进行删除留言时,未发送del路由请求,提示以下信息,是什么原因呢?

在进行了后端删除留言代码编写后,前端进行删除留言时,未发送del路由请求,提示以下信息,是什么原因呢?

服务器端提示:

(node:3468) DeprecationWarning: collection.remove is deprecated. Use deleteOne, deleteMany, or bulkWrite instead.

(Use `node --trace-deprecation ...` to show where the warning was created)


意思是不能使用remove删除数据库数据吗?需要使用deleteOne或者deleteMany方法吗?

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

同学你好,能自己解决一个问题很棒!另一个问题解答如下:

由于前端代码中有刷新页面的操作,所以点击删除按钮后,del请求会一闪而过,没有保留在network中:

http://img1.sycdn.imooc.com//climg/60c02651092cb86308930497.jpg

祝学习愉快!

提问者 慕前端2185815 2021-06-08 20:54:53

后端未进行删除留言代码操作时,可以显示del路由请求:

http://img1.sycdn.imooc.com//climg/60bf683909c7363802030092.jpg

但是在添加了以下代码后,登录zhangsan点击删除留言,反而没有del路由请求了,这是什么原因呢?

// router.post('/del',loginCheck,async (ctx,next)=>{

// //获取_id

// const { _id } = ctx.request.body

// //获取用户名

// const { username } = ctx.session

// try{

// //执行删除

// await del(_id,username)

// ctx.body = {

// errno:0

// }

// }catch(ex){

// console.log('删除留言出错',ex)

// ctx.body = {

// errno:-1,

// message:'删除留言出错'

// }

// }



//删除自己的留言

async function del(_id,username){

await Comment.deleteOne({

_id,

username

})  //保证只能删除自己的

}



  • 提问者 慕前端2185815 #1

    使用remove也是一样的效果,不发送del路由请求

    2021-06-08 20:59:20
  • 提问者 慕前端2185815 #2

    l老师,问题已解决,是因为const { username } = ctx.session.userInfo。

    还有一个问题是,为什么del路由显示时间很短就没了呢,在XHR中闪过一下

    2021-06-08 21:09:40
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
5. Node.js全栈开发
  • 参与学习           人
  • 解答问题       307    个

前端工程师会后端开发已是趋势。从node.js到koa2再到数据库知识。结合真实项目,从项目需求分析、接口和数据设计到业务开发,帮你打通前后端任督二脉,为就业加码。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师