express + vue + mongodb 请求方式问题 post get

发布于 2022-09-06 15:22:31 字数 3055 浏览 13 评论 0

问题:
场景描述一下,我是把vue 打包完的dist 目录放到 express 中 做为页面展示

开发模式调试没任何问题,请求数据都可以。

我就开启express,监听 localhost:3000 端口

页面出来了,静态资源有了。但是:

假设请求路径 http://localhost:3000/goods/goodsList?page=2&pageSize=4&sort=1&filterMin=0&filterMax=10000000

clipboard.png

clipboard.png

通过 axios get方式去请求,就是 500响应,我发现都是get请求有问题,post没问题。换成post请求就解决了。

但是想不明白是什么问题,难道是请求配置啥的?

下面贴下代码

clipboard.png

express中代码

var express = require('express');
var path = require('path');
var favicon = require('serve-favicon');
var logger = require('morgan');
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');
var ejs = require('ejs');

var mongoose = require('./config/mongoose');
var mongodb = mongoose();

var index = require('./routes/index');
var users = require('./routes/users');
var goods = require('./routes/goods');
require('./util/util');

var app = express();

//指定模板位置
app.set('views', path.join(__dirname, 'views'));
app.engine('.html',ejs.__express);
//指定模板引擎
app.set('view engine', 'html');

// uncomment after placing your favicon in /public
//app.use(favicon(path.join(__dirname, 'public', 'favicon.ico')));
app.use(logger('dev'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, './dist')));

app.get('*', function(req, res) {
  const html = fs.readFileSync(path.resolve(__dirname, './dist/index.html'), 'utf-8')
  res.send(html)
})

app.use(function (req,res,next) {
  if(req.cookies.userId){
    next();
  }else{
      console.log("url:"+req.originalUrl);
      if(req.originalUrl=='/users/login' || req.originalUrl=='/users/logout' || req.originalUrl.indexOf('/goodsList')>-1){
          next();
      }else{
          res.json({
            status:'10001',
            msg:'当前未登录',
            result:''
          });
      }
  }
});


app.use('/', index);
app.use('/users', users);
app.use('/goods', goods);

// catch 404 and forward to error handler
app.use(function(req, res, next) {
  var err = new Error('Not Found');
  err.status = 404;
  next(err);
});

// error handler
app.use(function(err, req, res, next) {
  // set locals, only providing error in development
  res.locals.message = err.message;
  res.locals.error = req.app.get('env') === 'development' ? err : {};

  // render the error page
  res.status(err.status || 500);
  res.render('error');
});

module.exports = app;

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文