我想将文件作为二进制文件传递给我的一个函数,我想用chai http编写测试,下面是代码:
chai.request('http://localhost:8085')
.post('/myAPI/' + req.params.id + '/logo')
.attach('image', fs.readFileSync(__dirname + '/resources/IMG_86425.jpg'), 'IMG_86425.jpg')
.set('Content-Type','image/jpeg')
.end((err, res) => {
should.equal(err, null);
res.status.should.equal(200);
res.should.be.json;
done();
});
问题是attach()本质上似乎将内容类型更新为多部分表单数据,尽管我试图用image / jpeg来过度使用它。 我们可以做些什么来覆盖attach()的这种行为,还是有其他方法可以将二进制数据发布到我的函数中。
由于
答案 0 :(得分:2)
attach适用于多部分表单数据,用于将文件作为二进制文件发送:
.send(fs.readFileSync(__dirname + '/resources/IMG_86425.jpg'))
.set('Content-Type','image/jpeg')
解决问题......