我正在构建一个 VueJS 应用程序,并使用 JSON Web 令牌作为我的身份验证系统。当我登录用户时,我将令牌存储在 localStorage 中并且工作正常。我检查了标头,它位于“授权”参数中。
我通过axios.defaults.headers.common['Authorization'] = localStorage.getItem('token')
我看到标题了,没问题。但是,当我在 API 中对受保护的路由执行 get 请求时,返回“未经授权”。但是当我在请求中手动传递带有令牌的标头时,工作正常。
有人知道如何在执行某些请求时自动传递标头吗?
我正在尝试上传文件,上传正常!问题是当我尝试上传一些根据我的 fileFitler 处理不被接受的文件时。我想在控制台中收到一些错误或将用户重定向到后页,但我只是在浏览器上收到一个错误:无法读取未定义的读取属性文件名。
但是,如果我上传了一些被接受的扩展,就可以了!
这是我的代码:
const mongoose = require('mongoose');
const multer = require('multer');
const uuidV4 = require('uuid/v4');
const Video = require('../models/videoModel');
function fileFilter(req, file, cb){
const extension = file.mimetype.split('/')[0];
if(extension !== 'video'){
return cb(null, false), new Error('Something went wrong');
}
cb(null, true);
};
var storage = multer.diskStorage({
destination: function (req, file, cb) {
cb(null, './uploads')
},
filename: function (req, file, cb) {
const newName = uuidV4();
const extension = file.mimetype.split('/')[1];
cb(null, newName +`.${extension}`);
}
});
var upload = multer({ storage: …Run Code Online (Sandbox Code Playgroud)