找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 185|回复: 0

Node 16 无法给 https 请求使用 http 代理了

[复制链接]

1091

主题

0

回帖

3307

积分

管理员

积分
3307
发表于 2023-12-8 09:41:12 | 显示全部楼层 |阅读模式
Node 14 是可以的,不清楚有没有人可以搞定,可以付费
https://github.com/neoclide/coc.nvim/issues/3521

代理是为了下载东西?
有可复现的代码吗?
我今天也遇到类似的问题,发现是因为 npm 包的版本太老,不支持 node16 ,修改 npm 包版本后就好了
确定 http_proxy 和 https_proxy 都试过?理论上 http 代理只是用 http 协议做握手的。
跟请求的 url 也有关系,有些就不会报错,有些偶尔能成功,不过我发现请求其实成功了:```jslet url = require('url')let https = require('https')let HttpsProxyAgent = require('https-proxy-agent')// HTTP/HTTPS proxy to connect tolet proxy = 'http://127.0.0.1:7070'console.log('using proxy server %j', proxy)// HTTPS endpoint for the proxy to connect tolet endpoint = 'https://registry.npmjs.org/coc-omni'console.log('attempting to GET %j', endpoint)let options = url.parse(endpoint)// create an instance of the `HttpsProxyAgent` class with the proxy server informationlet agent = new HttpsProxyAgent(proxy)options.agent = agenthttps.get(options, function (res) { console.log('"response" event!', res.headers) res.pipe(process.stdout)})```
有一定失败的 url 吗?
我昨天碰到一个窘境,node-sass 需要 node-gyp ,node-gyp 又有一大堆依赖,同时还不支持 node 15 往上。 最直接的方式就是弄个 docker image, 把代码考进去,每次跑容器就好了
```dockerfileFROM node:14-alpine as baseENV HOME=/home/nodeRUN apk add --no-cache python3 make g++ && \ yarn global add node-gyp@${VERSION} && \ yarn cache clean && \ node-gyp help && \ mkdir $HOME/.cache && \ chown -R node:node $HOMEUSER nodeVOLUME $HOME/.cacheWORKDIR $HOMECMD ["sh"]FROM baseWORKDIR /frontendCOPY package.json package.jsonRUN yarn installCOPY . .CMD ["npm", "start"]```现在流行 ship with environment 不是没有理由的, 越来越多的版本和各式各样的依赖,只要一个不对口,整个项目就跑不起来
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|张迁碑

GMT+8, 2024-10-31 19:28 , Processed in 0.199838 second(s), 23 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表