在 JEST 中将文件上传到 HAPI 服务器

问题描述

我试图通过 Jest 进行测试,使用多部分为 HAPI 后端工作。我想测试一个文件上传

我使用的卷曲:curl -X POST --form file=@./tests/file.lic http://localhost:3001/license/validate 工作正常

我的 hapi 服务器有以下路由:

  {
        method: 'POST',path: `${routePrefix}/validate`,options: {
          auth: false,payload: {
            parse: true,timeout: false,maxBytes: MAX_BYTES,allow: 'multipart/form-data',multipart: {
              output: "stream"
            },},handler: postValidateHandler,

这是我的测试:

test('status endpoint returns 404 - invalid route',async () => {
    // Fill the form object

    var form = new FormData();

    const response = await server.inject({
      url: `${routePrefix}/validate`,method: 'POST',headers: form.getHeaders(),payload: fs.readFileSync(path.join(__dirname,'file.lic')),});
    expect(response.statusCode).toEqual(200)
    console.log(response);

  })
})

但无论我做什么我总是得到一个

message: 'Invalid multipart payload format'

任何提示我做错了什么?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)