【问题标题】:Getting the file type in nodeJS and send it via http在nodeJS中获取文件类型并通过http发送
【发布时间】:2017-05-16 19:23:36
【问题描述】:

我想向一些外部 API 发送以下请求:

curl "https://api.foo.com/v2/" \
  -u USERNAME_OR_ACCESS_TOKEN \
  -X POST \
  -F file=@/path/to/my/file.json

但我想用节点来做这件事。文件参数应该是一个文件 - 我如何从节点级别执行此操作?如何在 cURL 中发送像这里一样的文件?

我一直在尝试为文件提供一个相对于节点二进制位置的字符串,但它当然不起作用:

this.api.sendRequest("https://api.foo.com/v2/", "POST", {
  file: "path/to/my/file.json"
});

【问题讨论】:

标签: node.js http curl


【解决方案1】:

你可能想看看 npm request 包。下面是一个发送文件的例子:

const request = require('request');
const fs = require('fs');

request.post({
   url: "https://api.foo.com/v2/",
   formData: { file: fs.createReadStream("path/to/my/file.json") }
});

request.post() 将返回一个你可以.then() 并传递成功和错误回调的承诺。

在此处阅读有关request 表单的更多信息:https://www.npmjs.com/package/request#forms

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-14
    • 2013-12-10
    • 2013-07-22
    • 2014-07-04
    • 2011-08-15
    • 1970-01-01
    相关资源
    最近更新 更多