Node.js發(fā)出請(qǐng)求走Proxyman代理調(diào)試tip詳解
需求
一些情況需要從請(qǐng)求來(lái)調(diào)試, 所以找了一個(gè)方案讓 Node.js 請(qǐng)求走代理.
基于 https://stackoverflow.com/a/62174988/883571 驗(yàn)證了這樣一個(gè)方案:
import proxy from "node-global-proxy";
proxy.setConfig({
http: "http://localhost:9090",
https: "http://localhost:9090",
});
proxy.start();使用 Proxyman
我使用的是 Proxyman, 端口是 9090, 并且提供的是 HTTP 代理, 兩個(gè)參數(shù)都用 http: 地址.
代碼用了 import 由于我使用的是 mjs 文件執(zhí)行.
這個(gè)時(shí)候直接運(yùn)行, 發(fā)出請(qǐng)求, Node.js 會(huì)報(bào)錯(cuò), 證書(shū)驗(yàn)證不通過(guò):
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'
}
本地開(kāi)發(fā)的時(shí)候可以先通過(guò)環(huán)境變量臨時(shí)關(guān)閉證書(shū)驗(yàn)證的行為:
export NODE_TLS_REJECT_UNAUTHORIZED=0
再重新運(yùn)行腳本時(shí), 會(huì)有警告提示, 請(qǐng)求會(huì)正常通過(guò):
(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 當(dāng)中可以開(kāi)始抓取請(qǐng)求內(nèi)容了. 這部分不贅述.
其他
未知項(xiàng),
- 如果 Node.js 啟動(dòng)一個(gè)服務(wù), 外部調(diào)用時(shí)是否有辦法統(tǒng)一將其展示的 Proxyman?
- 不通過(guò)環(huán)境變量關(guān)閉證書(shū)驗(yàn)證, HTTPS 直接代理應(yīng)該怎樣處理?
更多關(guān)于Node.js Proxyman代理調(diào)試的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
jwt在node中的應(yīng)用實(shí)踐(安裝配置封裝)
這篇文章主要為大家介紹了jwt在node中的應(yīng)用實(shí)踐包括安裝配置封裝,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-09-09
從零開(kāi)始學(xué)習(xí)Node.js系列教程之SQLite3和MongoDB用法分析
這篇文章主要介紹了Node.js SQLite3和MongoDB用法,結(jié)合實(shí)例形式分析了SQLite3和MongoDB數(shù)據(jù)庫(kù)的初始化、連接、查詢等操作的實(shí)現(xiàn)技巧與相關(guān)注意事項(xiàng),需要的朋友可以參考下2017-04-04
干凈卸載Windows的Node.js環(huán)境的方法
這篇文章主要介紹了如何干凈卸載Windows的Node.js環(huán)境的方法,文中通過(guò)圖文結(jié)合的方式講解的非常詳細(xì),對(duì)大家刪除Node.js環(huán)境有一定的幫助,需要的朋友可以參考下2025-01-01
nodejs實(shí)現(xiàn)的連接MySQL數(shù)據(jù)庫(kù)功能示例
這篇文章主要介紹了nodejs實(shí)現(xiàn)的連接MySQL數(shù)據(jù)庫(kù)功能,結(jié)合實(shí)例形式分析了nodejs連接及查詢mysql數(shù)據(jù)的相關(guān)操作步驟與實(shí)現(xiàn)技巧,需要的朋友可以參考下2018-01-01
npm?install總是卡住不動(dòng)問(wèn)題的解決辦法
在我們安裝完Node.js之后,需要使用npm命令來(lái)安裝一些工具,下面這篇文章主要給大家介紹了關(guān)于npm?install總是卡住不動(dòng)問(wèn)題的解決辦法,需要的朋友可以參考下2022-05-05
node中的__filename和__dirname的使用詳解
本文主要介紹了node中的__filename和__dirname的使用詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-03-03
基于 Node 實(shí)現(xiàn)簡(jiǎn)易 serve靜態(tài)資源服務(wù)器的示例詳解
靜態(tài)資源服務(wù)器(HTTP 服務(wù)器)可以將靜態(tài)文件(如 js、css、圖片)等通過(guò) HTTP 協(xié)議展現(xiàn)給客戶端。本文介紹如何基于 Node 實(shí)現(xiàn)一個(gè)簡(jiǎn)易的靜態(tài)資源服務(wù)器,感興趣的朋友一起看看吧2022-06-06

