nodejs http2下载慢

新手上路,请多包涵

使用curl非常快
curl --http2 -O "https://t1.daumcdn.net/potplayer/PotPlayer/Version/Latest/PotPlayerSetup64.exe"

nodejs

const fs = require('fs')
const http2 = require('http2')

function error({ message }) {
  console.log(message)
}

const url = new URL('https://t1.daumcdn.net/potplayer/PotPlayer/Version/Latest/PotPlayerSetup64.exe')
const {
  HTTP2_HEADER_STATUS,
  HTTP2_HEADER_AUTHORITY,
  HTTP2_HEADER_SCHEME,
  HTTP2_HEADER_PATH
} = http2.constants

const h2 = http2.connect(url)

h2.on('error', error)

const req = h2.request({
  [HTTP2_HEADER_AUTHORITY]: url.host,
  [HTTP2_HEADER_PATH]: url.pathname,
  [HTTP2_HEADER_SCHEME]: 'https',
})

req.on('response', (headers) => {
  console.log(headers[HTTP2_HEADER_STATUS])

  const file = fs.createWriteStream('file')

  req.pipe(file)

  req.on('end', () => {
    h2.close()
  })
})

req.on('error', error)

req.end()

使用https模块会快一点 但是没有curl快
什么原因呢

阅读 1.1k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏