首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法接收multer文件(node.js-nuxt 3)

无法接收multer文件(node.js-nuxt 3)
EN

Stack Overflow用户
提问于 2022-06-03 16:15:58
回答 1查看 204关注 0票数 1

我在穆特中使用nuxt3 3/node.js,无法在服务器中存储或接收文件,也无法在根中看到req.file,它始终是空的。服务器代码:

代码语言:javascript
复制
const upload = multer({ dest: './uploads/' })
router.post('/sendNewQuestionCSV', upload.single('csv'),adminControler.sendNewQuestionCSV.bind(adminControler))

我的FrontEnd代码和nuxt3:

代码语言:javascript
复制
async function fileSelected(e) {
  let formData = new FormData();
  formData.append("csv", e.target.files[0]);
  const res = await $postFetch("/admin/sendNewQuestionCSV", formData, {
    "Content-Type": "multipart/form-data",
  });
}

注意:$postFetch是我自己使用的fetch方法,第三个参数是"headers“。它是一个nuxt3插件

这个插件代码:

代码语言:javascript
复制
export default defineNuxtPlugin(async () => {
  return {
    provide: {
      postFetch: async (url, body,headers={}) => {
        let token = useCookie('token');
        return await $fetch(url, {
          method: 'post',
          body: { token: token.value, ...body },
          baseURL: useRuntimeConfig().API_BASE,
          ...headers
        }).catch((error) => error.data)
      }
    }
  }
})
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-06-03 16:48:09

尝试使用.append添加token

代码语言:javascript
复制
  postFetch: async (url, body,headers={}) => {
    let token = useCookie('token');
    body.append('token', token.value);
    return await $fetch(url, {
      method: 'post',
      body: body,
      baseURL: useRuntimeConfig().API_BASE
    }).catch((error) => error.data)
  }

编辑

还可以尝试删除headers

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72492442

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档