【问题标题】:Setting curl switches in an http request on NodeJS在 NodeJS 上的 http 请求中设置 curl 开关
【发布时间】:2020-04-29 02:13:30
【问题描述】:

我要发送一个HTTP请求,相当于下面的curl命令:

curl --data "..." -H "Content-Type: application/json" -X POST localhost:8545

这是我在 NodeJS 中获得大部分内容的方法:

let http = require("http");

let data = "...";

let options = {
    protocol: "http:",
    host: "localhost",
    port: 8545,
    method: "POST",
    headers: {
        "Content-Type": "application/json",
        "Content-Length": Buffer.byteLength(data)
    }
};

let req = http.request(options, function(res) {
    ...
});

req.on("error", function(e) {
    console.log('problem with request: ' + e.message);
});

req.write(data);
req.end();

如何添加出现在curl 命令上的-H-X 开关?

curl开关的描述可以在here找到。

http.request的描述可以在here找到。

但我无法得出结论如何简单地将这两个开关添加到我的 HTTP 请求中。

【问题讨论】:

  • 你已经这样做了......

标签: node.js http curl


【解决方案1】:

-X 和 -H 不是开关(如开/关),它们是参数,需要在它们之后附加一个额外的参数。

-X <command> 指的是请求方法,您已经在选项对象中将其设置为method: "POST"

-H <header> 指的是请求标头,您已将其设置为 "Content-Type": "application/json"

除了在程序运行时高枕无忧之外,您无事可做。

【讨论】:

    猜你喜欢
    • 2015-07-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-22
    • 2013-06-13
    相关资源
    最近更新 更多