vue3+node+koa项目浅记

vue3+node+koa项目浅记,第1张

目录 vue3+node+koa项目浅记一、跨域问题二、datagrip连接mongodb数据库不能手动增删改数据三、mongoose新增数据报错四、在同一局域网下,手机不能访问本地启动的项目


vue3+node+koa项目浅记

记录一下项目过程中遇到的问题吧。项目是自个本地开发的,使用的是vue3+node+koa2+mongoose,mongdb数据库是在docker安装的,并通过datagrip管理的。

一、跨域问题

问题:前端请求接口报错,Access to XMLHttpRequest at ‘…’ from origin ‘…’ has been blocked by CORS policy: No ‘Access-Control-Allow-Origin’ header is present on the requested resource.。

解决:下载koa2-cors,cors()中还可以进行相关配置

var cors = require('koa2-cors');
app.use(cors());
二、datagrip连接mongodb数据库不能手动增删改数据

问题:当我手动 *** 作数据库时会提示 the view is read only,但是调用接口通过数据库命令 *** 作就可行,所以排除了数据库用户权限的问题。

解决:当时下载的datagrip版本不支持mongodb数据库的手动改数据的 *** 作,更新了版本就行了。

三、mongoose新增数据报错

问题:新增数据报错

try {
    const result = await testM.insertMany(param)
    ctx.body = {
      code: 200,
      msg: "添加成功"
    }
  } catch (error) {
    // console.log(error) // 此处建议放开,可查看到具体问题
    ctx.body = {
      code: 400,
      msg: "添加失败"
    }
  }

解决:定义数据库的Schema时,指定某字段为Number类型,后开发前端调用接口时,考虑到使用string类型更好,未对应修改后端代码,所以报错。

四、在同一局域网下,手机不能访问本地启动的项目

问题:本地启动的项目,在电脑的浏览器能正常访问,但是手机不行(连接的同一wifi)
解决:找了很多文章,大多说的是需要关闭防火墙,但是想起在公司开发时就不需要,后发现是连接wifi时的属性分为公用和专用网络,设置为专用网络就可以了

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1297156.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-10
下一篇 2022-06-10

发表评论

登录后才能评论

评论列表(0条)

保存