Nodejs发送multipart/form-data请求

本文介绍如何使用Node.js的form-data库实现multipart/form-data格式的文件上传请求。通过具体代码示例,展示了设置请求头、读取文件并发送POST请求的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Nodejs发送multipart/form-data请求,上传文件

    var FormData = require('form-data');
    var fs = require('fs');
    var http = require('http');
    var form = new FormData();
    form.append('file', fs.createReadStream("./filename.zip"));//'file'是服务器接受的key

    var headers = form.getHeaders();//这个不能少
    headers.Cookie = cookie;//自己的headers属性在这里追加

    var request = http.request({
      method: 'post',
      host: 'ice97.cn',
      path: '/uploadFile/',
      headers: headers
    },function(res:any){
      var str='';
      res.on('data',function(buffer:any){
        str+=buffer;//用字符串拼接
      }
      );
      res.on('end',()=>{
        var result = JSON.parse(str);
        //上传之后result就是返回的结果
      });
    });
    form.pipe(request);

由于nodejs大多数都是写接受表单请求的,所以很少的资料用nodejs作为客户端去上传文件。试了needle这个库,但是没成功,上面这个方法是成功的。希望对大家有帮助!
参考文章:
form-data
nodejs之http.request 网页抓取数据

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值