Open Schwartz10 opened 5 years ago
@Schwartz10 were you able to get this working? I would love to figure something like this out in my project, but cannot get .attach
to work as I expect
I'm having the same issue. Sometimes it works, sometimes I get ECONNRESET and sometimes I get ECONNABORTED. It could be related to #747
It may be related to this issue as well https://github.com/visionmedia/superagent/issues/1607
not sure if this is still actual, but anyway I managed to resolve it by creating the file in the server file system, then passing the path to the attach method
const uniqueDir = crypto.randomUUID();
fs.mkdirSync(`/tmp/todownload/${uniqueDir}`);
const localPath = `/tmp/todownload/${uniqueDir}/test.pdf`;
fs.writeFileSync(localPath, Buffer.from('Test pdf file data'), 'binary');
const response = await supertest(app)
.post('/testingRoute')
.field('field1', '{ "someProp": "Test" }')
.field('field2', 'null')
.attach('file', localPath);
After this multer accepted the file and I could test my code.
Hi, I'm trying to test a route that accepts multipart/form-data. The route works via postman, a node script, and in the browser, but I can't seem to get it to work with supertest (who referred me to the superagent docs).
Here's the code that's working in a simple node script:
I've tried numerous different strategies with forming a post via supertest:
I've also tried the above with different variations, like removing
.type
or.set(headers)
, still with no luck.The error seems to be throwing from the
busboy
lib, which is likely due to the multer lib:Here's the issue with supertest lib
any ideas what i'm doing wrong? Thanks for any help!