diff --git a/lib/fetch/body.js b/lib/fetch/body.js index 105eb553157..1d9f17d7e33 100644 --- a/lib/fetch/body.js +++ b/lib/fetch/body.js @@ -1,6 +1,6 @@ 'use strict' -const Busboy = require('busboy') +const Busboy = require('@fastify/busboy') const util = require('../core/util') const { ReadableStreamFrom, @@ -385,10 +385,9 @@ function bodyMixinMethods (instance) { let busboy try { - busboy = Busboy({ + busboy = new Busboy({ headers, - preservePath: true, - defParamCharset: 'utf8' + preservePath: true }) } catch (err) { throw new DOMException(`${err}`, 'AbortError') @@ -397,8 +396,7 @@ function bodyMixinMethods (instance) { busboy.on('field', (name, value) => { responseFormData.append(name, value) }) - busboy.on('file', (name, value, info) => { - const { filename, encoding, mimeType } = info + busboy.on('file', (name, value, filename, encoding, mimeType) => { const chunks = [] if (encoding === 'base64' || encoding.toLowerCase() === 'base64') { diff --git a/package.json b/package.json index 3846b9dc398..817eb78eee3 100644 --- a/package.json +++ b/package.json @@ -161,6 +161,6 @@ ] }, "dependencies": { - "busboy": "^1.6.0" + "@fastify/busboy": "^2.0.0" } } diff --git a/test/node-fetch/utils/server.js b/test/node-fetch/utils/server.js index 46103055305..46dc9834fca 100644 --- a/test/node-fetch/utils/server.js +++ b/test/node-fetch/utils/server.js @@ -1,7 +1,7 @@ const http = require('http') const zlib = require('zlib') const { once } = require('events') -const newBusboy = require('busboy') +const Busboy = require('@fastify/busboy') module.exports = class TestServer { constructor () { @@ -435,7 +435,7 @@ module.exports = class TestServer { if (p === '/multipart') { res.statusCode = 200 res.setHeader('Content-Type', 'application/json') - const busboy = newBusboy({ headers: request.headers }) + const busboy = new Busboy({ headers: request.headers }) let body = '' busboy.on('file', async (fieldName, file, fileName) => { body += `${fieldName}=${fileName}` diff --git a/test/utils/formdata.js b/test/utils/formdata.js index 19dac3e84e5..edd88545d15 100644 --- a/test/utils/formdata.js +++ b/test/utils/formdata.js @@ -1,4 +1,4 @@ -const busboy = require('busboy') +const Busboy = require('@fastify/busboy') function parseFormDataString ( body, @@ -9,15 +9,15 @@ function parseFormDataString ( fields: [] } - const bb = busboy({ + const bb = new Busboy({ headers: { 'content-type': contentType } }) return new Promise((resolve, reject) => { - bb.on('file', (name, file, info) => { - cache.fileMap.set(name, { data: [], info }) + bb.on('file', (name, file, filename, encoding, mimeType) => { + cache.fileMap.set(name, { data: [], info: { filename, encoding, mimeType } }) file.on('data', (data) => { const old = cache.fileMap.get(name) @@ -37,7 +37,7 @@ function parseFormDataString ( }) bb.on('field', (key, value) => cache.fields.push({ key, value })) - bb.on('close', () => resolve(cache)) + bb.on('finish', () => resolve(cache)) bb.on('error', (e) => reject(e)) bb.end(body)