节点文件上载以502网关错误结束

时间:2015-07-02 18:41:03

标签: node.js npm npm-request

我正在尝试使用request模块将文件上传到Telegram's Bot API。但是,我最终得到了502网关错误。这是我的代码:

var request = require("request");
var fs = require("fs");
fs.readFile("image.png",function(err,data){
    var formdata = {};
    formdata.chat_id = <chatid>;
    formdata.photo = data;
    if(err)
      console.log(err);
    request({
      url : "https://api.telegram.org/bot<token>/sendPhoto",
      method : "POST",
      headers : {
        "Content-Type" : "multipart/form-data"
      },
      formData : formdata
    },function(err,res,body){
        if(err)
          console.log(err)
        console.log(body);
    })
});

这是上传文件的正确方法还是我在某处犯了错误?

1 个答案:

答案 0 :(得分:1)

我建议,最好使用请求对象的 form 字段,这样就可以使用 fs的createReadStream函数发送文件了 module.例如:

{{1}}

正确使用阅读:

https://nodejs.org/api/fs.html#fs_fs_createreadstream_path_options https://github.com/request/request#forms