我有一個在Atlas MongoDB雲集羣上託管的mongodb數據庫。我目前正在訪問該數據庫在我的Node.js應用程序中使用貓鼬:使用貓鼬和Fixie連接到mongodb(Heroku附加組件)
mongoose.connect("mongodb://user:[email protected]***.mongodb.net:***,cluster0-shard-00-01-***.mongodb.net:***,cluster0-shard-00-02-***.mongodb.net:***/admin?ssl=true&replicaSet=Cluster0-shard-0&authSource=admin");
因爲MongoDB的圖集雲有一個白名單,以及Heroku的不提供可能獲得一個固定的IP地址,我的申請,我使用Fixie add-on。基本上Fixie充當出站流量的代理。
這樣,我可以通過HTTP請求資源,這些資源通過Fixie提供的固定IP地址進行隧道傳輸。但是我需要的是使用Fixie的代理連接到Atlas Cloud集羣,以便從數據庫中檢索和修改數據。
可以使用貓鼬完成嗎?
mongoose.connect
函數接受option parameter,但我找不到有關通過代理建立連接的任何選項。
我處於相同的情況(Heroku + Node/Express + Mongoose + MongoDB Atlas)。我知道的兩個當前選項是1)允許MongoDB Atlas接受來自「0.0.0.0/0」(所有IP地址)的流量,或者2)獲得具有靜態IP選項的Heroku私人空間(需要它們企業版,這個傳聞已經開始在1萬美元/月以上)。它看起來像Mongoose的'node-mongodb-native/connection'驅動程序是它需要接受自定義套接字連接的地方。 – Pete