国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

nodejs中request庫使用HTTPS代理的方法

來源:懂視網 責編:小采 時間:2020-11-27 21:57:40
文檔

nodejs中request庫使用HTTPS代理的方法

nodejs中request庫使用HTTPS代理的方法:正在嘗試改用NodeJS編寫爬蟲,http請求庫選擇了 request ,用起來還是挺簡單的。 現在有個需求,需要用Fiddler抓包我發出去的請求,以便和瀏覽器發出去的包進行對比。 因為需要解密HTTPS報文,需要讓node要么忽略證書安全,要么信任Fiddler的CA證書
推薦度:
導讀nodejs中request庫使用HTTPS代理的方法:正在嘗試改用NodeJS編寫爬蟲,http請求庫選擇了 request ,用起來還是挺簡單的。 現在有個需求,需要用Fiddler抓包我發出去的請求,以便和瀏覽器發出去的包進行對比。 因為需要解密HTTPS報文,需要讓node要么忽略證書安全,要么信任Fiddler的CA證書

正在嘗試改用NodeJS編寫爬蟲,http請求庫選擇了 request ,用起來還是挺簡單的。

現在有個需求,需要用Fiddler抓包我發出去的請求,以便和瀏覽器發出去的包進行對比。

因為需要解密HTTPS報文,需要讓node要么忽略證書安全,要么信任Fiddler的CA證書。

網上找了一圈,總結如下:

方法一:設置環境變量

  • 設置環境變量NODE_TLS_REJECT_UNAUTHORIZED=0
  • 即"不拒絕未認證的證書"
  • 但是直接修改系統環境變量比較危險,因為會影響到所有nodejs的程序;比較穩妥的辦法是腳本中調用process.env["NODE_TLS_REJECT_UNAUTHORIZED"] = 0; 這樣僅對本進程生效
  • 方法二:每請求單獨設置忽略證書安全

  • 上述方法還是有一定風險,因為當前nodejs進程都受此全局設置影響
  • 可以在request的options中添加rejectUnauthorized: false選項來針對單個請求忽略證書檢查
  • 當然也可以用request.defaults直接設置默認選項
  •  const request = require("request").defaults({
     proxy: "http://127.0.0.1:8888",
     rejectUnauthorized: false,
     })
     request.get("https://www.baidu.com").on("response", console.log)
    

    方法三:使用Fiddler的CA證書

  • 這個方法是最穩妥的,不會讓你的子系統產生任何溢出影響
  • 首先在Fiddler內把其根證書導出到桌面:Tools -> Options -> HTTPS -> Actions -> Export Root Certificate to Desktop
  • 導出的文件是個.cer證書,經測試nodejs不直接支持,需要用openssl轉換成PEM格式(我的openssl是cygwin裝的)
  • openssl x509 -inform DER -in FiddlerRoot.cer -outform PEM -out fiddler.pem
  • 把轉換出來的fiddler.pem放到你的程序能訪問的位置
  • 使用ca選項來指定CA證書
  •  const request = require("request").defaults({
     proxy: "http://127.0.0.1:8888",
     ca: require("fs").readFileSync("path/to/fiddler.pem", {encoding: "utf-8"}),
     })
     request.get("https://www.baidu.com").on("response", console.log)
    

    另外:request當然也支持自簽名證書,不過我暫時沒這方面需求,就沒繼續摸索了

    聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文檔

    nodejs中request庫使用HTTPS代理的方法

    nodejs中request庫使用HTTPS代理的方法:正在嘗試改用NodeJS編寫爬蟲,http請求庫選擇了 request ,用起來還是挺簡單的。 現在有個需求,需要用Fiddler抓包我發出去的請求,以便和瀏覽器發出去的包進行對比。 因為需要解密HTTPS報文,需要讓node要么忽略證書安全,要么信任Fiddler的CA證書
    推薦度:
    標簽: 代理 js https
    • 熱門焦點

    最新推薦

    猜你喜歡

    熱門推薦

    專題
    Top
    主站蜘蛛池模板: 国产精品美女久久久久 | 99久久99久久久精品久久 | 日韩高清第一页 | 国产精品91av | 久久久久国产成人精品亚洲午夜 | 国产成人精视频在线观看免费 | 国产成人综合精品一区 | 一级毛片私人影院免费 | 亚洲欧洲中文字幕 | 国产91在线 | 中文 | 国产精品久久亚洲一区二区 | 91国内精品久久久久影院优播 | 日韩精品一区二区三区国语自制 | 国产女同一区二区三区五区 | 日韩电影第一页 | 日本一区二区不卡在线 | 国产精品视频一区二区三区 | 91欧美一区二区三区综合在线 | 国产综合在线视频 | 免费中文字幕一级毛片 | 精品一区二区三区免费毛片爱 | 国产一区二区高清视频 | 久久精品免费一区二区视 | 亚洲日韩图片专区第1页 | 精品视频一区二区三区 | 欧美午夜在线 | 日韩有码在线播放 | 欧美成人高清视频 | 视频一区二区三区欧美日韩 | 国产欧美日韩在线不卡第一页 | 国产精品激情综合久久 | 日韩一区二区三区在线视频 | 最新国产精品精品视频 | 久久伊人一区二区三区四区 | 日韩精品视频免费观看 | 免费一级a毛片在线播放直播 | 日韩三级电影网站 | 久久一区二区三区精品 | 日韩阿v | 精品国产乱码久久久久久一区二区 | 免费国产最新进精品视频 |