Node.js发出请求走Proxyman代理调试tip详解

 更新时间:2023年08月01日 14:11:39   作者:题叶  
这篇文章主要为大家介绍了Node.js发出请求走Proxyman代理调试tip详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

需求

一些情况需要从请求来调试, 所以找了一个方案让 Node.js 请求走代理.

基于 https://stackoverflow.com/a/62174988/883571 验证了这样一个方案:

import proxy from "node-global-proxy";
proxy.setConfig({
  http: "http://localhost:9090",
  https: "http://localhost:9090",
});
proxy.start();

使用 Proxyman

我使用的是 Proxyman, 端口是 9090, 并且提供的是 HTTP 代理, 两个参数都用 http: 地址.
代码用了 import 由于我使用的是 mjs 文件执行.

这个时候直接运行, 发出请求, Node.js 会报错, 证书验证不通过:

cause: Error: unable to verify the first certificate
      at TLSSocket.onConnectSecure (node:_tls_wrap:1539:34)
      at TLSSocket.emit (node:events:513:28)
      at TLSSocket.emit (node:domain:489:12)
      at TLSSocket._finishInit (node:_tls_wrap:953:8)
      at TLSWrap.ssl.onhandshakedone (node:_tls_wrap:734:12) {
    code: 'UNABLE_TO_VERIFY_LEAF_SIGNATURE'
  }

本地开发的时候可以先通过环境变量临时关闭证书验证的行为:

export NODE_TLS_REJECT_UNAUTHORIZED=0

再重新运行脚本时, 会有警告提示, 请求会正常通过:

(node:93084) Warning: Setting the NODE_TLS_REJECT_UNAUTHORIZED environment variable to '0' makes TLS connections and HTTPS requests insecure by disabling certificate verification.

然后在 Proxyman 当中可以开始抓取请求内容了. 这部分不赘述.

其他

未知项,

  • 如果 Node.js 启动一个服务, 外部调用时是否有办法统一将其展示的 Proxyman?
  • 不通过环境变量关闭证书验证, HTTPS 直接代理应该怎样处理?

更多关于Node.js Proxyman代理调试的资料请关注脚本之家其它相关文章!

相关文章

  • 前端常见面试题之async/await和promise的区别

    前端常见面试题之async/await和promise的区别

    async/await是异步代码的新方式,以前的方法有回调函数和Promise,下面这篇文章主要给大家介绍了关于前端常见面试题之async/await和promise区别的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-07-07
  • NODE.JS跨域问题的完美解决方案

    NODE.JS跨域问题的完美解决方案

    这篇文章主要介绍了NODE.JS跨域问题的完美解决方案,非常不错具有参考借鉴价值,需要的朋友可以参考下
    2016-10-10
  • Nodejs中的计时器(setTimeout setIntervals etImmediate)使用案例解析

    Nodejs中的计时器(setTimeout setIntervals etImmediate)使用案例解析

    这篇文章主要介绍了Nodejs中的计时器(setTimeout setIntervals etImmediate)使用案例解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-06-06
  • 使用Node.js给图片加水印的方法

    使用Node.js给图片加水印的方法

    使用Node.js给图片加水印,首先要确保本地安装了node环境。然后,我们进行图像编辑操作需要用到一个Node.js的库:images。具体详情大家可以通过本文了解下
    2016-11-11
  • node.js中fs\path\http模块的使用方法详解

    node.js中fs\path\http模块的使用方法详解

    Node.js是基于Chrome V8引擎的JavaScript的运行时(运行环境-宿主环境),下面这篇文章主要给大家介绍了关于node.js中fs\path\http模块的使用方法,需要的朋友可以参考下
    2023-01-01
  • 如何用npm命令删除开发项目中的node_modules文件夹

    如何用npm命令删除开发项目中的node_modules文件夹

    每个项目都会产生一个node_modules,每个node_modules少则几十兆,多则几百甚至上千兆,随着时间的积累,维护项目的增加,整个项目目录体积会越来越大,这篇文章主要给大家介绍了关于如何用npm命令删除开发项目中的node_modules文件夹,需要的朋友可以参考下
    2023-12-12
  • node.js中的path.resolve方法使用说明

    node.js中的path.resolve方法使用说明

    这篇文章主要介绍了node.js中的path.resolve方法使用说明,本文介绍了path.resolve的方法说明、接收参数、语法、使用实例和实现源码,需要的朋友可以参考下
    2014-12-12
  • Node.js实现下载文件的两种实用方式

    Node.js实现下载文件的两种实用方式

    最近优化了几个新人写出的动态表格文件下载接口的性能瓶颈,感觉非常有必要总结一篇文章作为文档来抛砖引玉,这篇文章主要给大家介绍了关于Node.js实现下载文件的两种实用方式,需要的朋友可以参考下
    2022-09-09
  • Nodejs环境Eggjs加签验签示例代码

    Nodejs环境Eggjs加签验签示例代码

    这篇文章主要介绍了Nodejs环境Eggjs加签验签示例代码,文章开头给大家介绍了加签和验签的基本概念,本文结合示例代码给大家介绍的非常详细,需要的朋友可以参考下
    2022-07-07
  • 使用nvm管理不同版本的node与npm的方法

    使用nvm管理不同版本的node与npm的方法

    本篇文章主要介绍了使用 nvm 管理不同版本的 node 与 npm的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-10-10

最新评论