当前位置: 首页 > 知识库问答 >
问题:

Node.js multer中的mp4文件上传问题

公良弘毅
2023-03-14

我正在尝试在Node.js中使用multer上传mp4文件

import React, { useState } from "react";
import Axios from "axios";


function VideoUploadPage() {

const onDrop = (files) => {
    let formData = new FormData();
    const config = {
      header: { "content-type": "multipart/form-data" },
    };
    formData.append("file", files[0]);
    console.log(files);

    Axios.post("/api/video/uploadfiles", formData, config).then((response) => {
      if (response.data.success) {
        console.log(response.data);
      } else {
        alert("비디오 업로드를 실패 했습니다.");
      }
    });
  };

}
const express = require("express");
const router = express.Router();
const multer = require("multer");
const path = require("path");
const ffmpeg = require("fluent-ffmpeg");



let storage = multer.diskStorage({
  destination: (req, file, cb) => {
    cb(null, "uploads/");
  },
  filename: (req, file, cb) => {
    cb(null, `${Date.now()}_${file.originalname}`);
  },
  fileFilter: (req, file, cb) => {
    const ext = path.extname(file.originalname);
    if (ext !== ".mp4") {
      return cb(res.status(400).end("only mp4 is allowed"), false);
    }
    cb(null, true);
  },
});

const upload = multer({ storage: storage }).single("file");

router.post("/uploadfiles", (req, res) => {
  upload(req, res, (err) => {
    if (err) {
      return res.json({ success: false, err });
    }
    return res.json({
      success: true,
      url: res.req.file.path,
      fileName: res.req.file.filename,
    });
  });
});

例如:“C://~~~/Uploads”

你知道吗?

共有1个答案

汤兴生
2023-03-14

您可以使用path.resolve(process.cwd()+'path tile upload folder');

例如:path.resolve(process.cwd()+'/uploads');

 类似资料:
  • 本文向大家介绍详解Spring Boot中PATCH上传文件的问题,包括了详解Spring Boot中PATCH上传文件的问题的使用技巧和注意事项,需要的朋友参考一下 Spring Boot中上传multipart/form-data文件只能是Post提交,而不针对PATCH,这个问题花了作者26个小时才解决这个问题,最后不得不调试Spring源代码来解决这个问题。 需求:在网页中构建一个表单,其

  • 以下是从mp4文件中提取内容和元数据的程序 - import java.io.File; import java.io.FileInputStream; import java.io.IOException; import org.apache.tika.exception.TikaException; import org.apache.tika.metadata.Metadata; impor

  • 本文向大家介绍PHP 文件上传限制问题,包括了PHP 文件上传限制问题的使用技巧和注意事项,需要的朋友参考一下 PHP 大文件上传占用大量资源,因此需要对上传的大小进行限制,以下为相关的三个参数: client_max_body_size upload_max_filesize post_max_size 与以上相对应的三个报错信息: Warning: POST Content-Length of

  • 本文向大家介绍php上传文件问题汇总,包括了php上传文件问题汇总的使用技巧和注意事项,需要的朋友参考一下 1.先做个最简单的上传文件 2.然后了解超级全局变量$_FILES的值 其中,$_FILES['userfile']['error']的所有值: UPLOAD_ERR_OK 其值为 0,没有错误发生,文件上传成功。 UPLOAD_ERR_INI_SIZE 其值为 1,上传的文件超过了 php

  • 本文向大家介绍PHP文件上传问题汇总(文件大小检测、大文件上传处理),包括了PHP文件上传问题汇总(文件大小检测、大文件上传处理)的使用技巧和注意事项,需要的朋友参考一下 由于涉及到本地和服务器两方面的安全问题,所以基于input type="file"形式的页面文件上传一直处于一个很尴尬的位置。一方面,用户不希望隐私泄露,所以浏览器无法对用户在上传时选择的文件做有效的判 断。另一方面,为了服务器

  • 本文向大家介绍解决layui上传文件提示上传异常,实际文件已经上传成功的问题,包括了解决layui上传文件提示上传异常,实际文件已经上传成功的问题的使用技巧和注意事项,需要的朋友参考一下 layui上传文件提示上传异常,实际文件已经上传成功 原因:上传回调的方法接收的参数应该是json格式的,之前返回的是String,所以一直走异常的方法 以上这篇解决layui上传文件提示上传异常,实际文件已经上