Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/470.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 护照认证不存在';不能在节点中使用multer_Javascript_Node.js_Passport.js_Multer - Fatal编程技术网

Javascript 护照认证不存在';不能在节点中使用multer

Javascript 护照认证不存在';不能在节点中使用multer,javascript,node.js,passport.js,multer,Javascript,Node.js,Passport.js,Multer,我正在尝试使用multer上传图像。但是,我想在用户上传图像之前对其进行身份验证。我的密码在下面,passport.authenticate不起作用。我可以不登录上传 const router = express.Router(); const upload = multer({ dest: 'uploads/' }) router.route("/", passport.authenticate("jwt", { session: false })) .post( uploa

我正在尝试使用multer上传图像。但是,我想在用户上传图像之前对其进行身份验证。我的密码在下面,passport.authenticate不起作用。我可以不登录上传

const router = express.Router();
const upload = multer({ dest: 'uploads/' })

  router.route("/", passport.authenticate("jwt", { session: false }))
  .post(
    upload.single("image"),
    (req, res, next) => {.....})
然而,身份验证是以这种方式工作的,但我不能使用multer

router.post(
  "/",
  passport.authenticate("jwt", { session: false }),
  (req, res) => {...})
router.route()只接受第一个路径参数,因此第二个参数(passport.authenticate())被默默忽略。 您可以验证

router.route("/", function(req,res,next){console.log('in 2nd param');next()})
.post()
我想你可以像下面这样使用multer

router.post("/",
            passport.authenticate("jwt", { session: false }),
            upload.single("image"),
            (req, res) => {...})

在post路由中使用multer,这样您就可以对路由器进行身份验证

router.post(‘/‘, passport , (req, res) =>{

})


您是否在帖子中提供授权标题?你到底期待什么样的行为?是的,我期待。认证是有效的,但当我使用multer时就不行了。谢谢,它有效。我不知道为什么我不明白。我感谢你的帮助。