Javascript Node.js https.request()错误:套接字挂起

Javascript Node.js https.request()错误:套接字挂起,javascript,node.js,ajax,https,xmlhttprequest,Javascript,Node.js,Ajax,Https,Xmlhttprequest,我使用plain node.js脚本发出POST请求,我发出请求的链接需要大约1到1.2分钟才能响应,在这段时间内,我收到了这个错误错误:套接字挂起 我得到套接字挂起错误的时间与我从服务器得到响应的时间大约是1到1.2分钟 我尝试过在标题中设置连接:“保持活动”,并在选项中将超时设置为20000ms,但没有成功。有什么帮助吗 顺便说一句,如果我使用axios,请求可以正常工作 这是我的脚本 const fs = require("fs") const path = requi

我使用plain node.js脚本发出POST请求,我发出请求的链接需要大约1到1.2分钟才能响应,在这段时间内,我收到了这个错误
错误:套接字挂起

我得到套接字挂起错误的时间与我从服务器得到响应的时间大约是1到1.2分钟

我尝试过在标题中设置连接:“保持活动”,并在选项中将超时设置为20000ms,但没有成功。有什么帮助吗

顺便说一句,如果我使用axios,请求可以正常工作

这是我的脚本

const fs = require("fs")
const path = require("path")
const https = require("https")

const file = fs.createWriteStream(path.join(__dirname, "data.csv"))

const options = {
  hostname: "example.com",
  path: "/example",
  method: "POST",
  headers: {
    <<headers>>
  }
  <<some other options>>
}

const req = https.request(options, response => {
    response.on("data", function (chunk) {
      console.log("started...")
      chunk.pipe(file)
    })
    response.on("end", function () {
      file.on("finish", function () {
        file.close()
      })
    })
  })

req.on("error", e => {
  console.error(e)
})
req.end()


发现了我犯的错误

首先而不是在
response.on('data')内执行
chunk.pipe(文件)
我直接做了
response.pipe(file)
,它成功了我不知道确切的原因,我猜这是因为response是流,chunk只是缓冲区,如果有人知道的话,请告诉我


第二步我在选项内设置请求正文,我必须像这样设置请求正文参数
req.write(formData)
,其中formData是我想作为请求正文发送的字符串。

发现了我犯的错误

首先而不是在
response.on('data')内执行
chunk.pipe(文件)
我直接做了
response.pipe(file)
,它成功了我不知道确切的原因,我猜这是因为response是流,chunk只是缓冲区,如果有人知道的话,请告诉我


Second我在设置请求正文内部选项时,我必须像这样设置请求正文参数
req.write(formData)
其中formData是我想作为请求正文发送的字符串。

哪个是url目标?@GermanFaller它是我现在没有节点,你试过邮递员吗?尝试添加userAgent标头,一些网站会检查这些Heders以避免使用机器人。@GermanGaller问题是,如果我使用axios,我的代码在使用相同选项时运行良好,但我想在没有任何外部库的情况下执行此操作。这是否适用于其他URL,或者只是有问题。Com?哪个是url目标?@GermanFaller是我现在没有节点,你试过邮递员了吗?尝试添加userAgent标头,一些网站会检查这些Heders以避免使用机器人。@GermanGaller问题是,如果我使用axios,我的代码在使用相同选项时运行良好,但我想在没有任何外部库的情况下执行此操作。这是否适用于其他URL,或者只是有问题。通用域名格式?
Error: socket hang up
    at connResetException (internal/errors.js:612:14)
    at TLSSocket.socketOnEnd (_http_client.js:493:23)
    at TLSSocket.emit (events.js:326:22)
    at endReadableNT (_stream_readable.js:1308:12)
    at processTicksAndRejections (internal/process/task_queues.js:80:21) {
  code: 'ECONNRESET'
}