【问题标题】:How to make POST request with a binary body in Meteor.js如何在 Meteor.js 中使用二进制正文发出 POST 请求
【发布时间】:2015-07-21 14:32:39
【问题描述】:

我希望找到解决 Meteor.js 中令人沮丧的问题的方法。我想对开放 API 服务进行一些 API 调用以进行人脸检测。我只需要发送一个图像并接收一个 JSON 对象。我找不到使用meteor.js 在帖子正文中发送图像的方法。 Meteor中默认的http包有如下方法

HTTP.post(url, [callOptions], [asyncCallback])

HTTP.call(method, url, [options], [asyncCallback])

有选项

[options]  
 data Object
    JSON-able object to stringify and use as the HTTP request body. Overwrites content.

我的问题是如何将二进制流附加到帖子正文。

有什么帮助吗? 谢谢

【问题讨论】:

  • 您是否尝试过将二进制文件简单地写入数据中的字段?我没有使用过 HTTP 包,但我不得不认为它与所有帖子一样工作。

标签: javascript meteor npm http-post


【解决方案1】:

我认为你不能用 Meteor HTTP.call 做到这一点

如果您查看他们的源代码 https://github.com/meteor/meteor/blob/devel/packages/http/httpcall_client.js 你会发现这个

content = JSON.stringify(options.data);

要发送二进制数据,你必须使用 XMLHttpRequest 和 FileReader API

我在Meteor: uploading file from client to Mongo collection vs file system vs GridFS 写了一个相关主题的答案(使用选项 2)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-10-13
    • 1970-01-01
    • 1970-01-01
    • 2015-11-03
    • 2019-07-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多