启用 SOCKS5 代理支持
概述
在本指南中,您可以学习如何通过使用 SOCKS5 代理连接到 MongoDB 实例。SOCKS5 是一种标准化的协议,用于通过代理服务器连接到网络服务。
提示
要了解更多关于 SOCKS5 协议的信息,请参阅维基百科上的SOCKS.
安装 socks 软件包
从 Node.js 驱动程序 6.0 版本开始,您必须安装socks
软件包以在应用程序中使用 SOCKS5 代理支持。您可以通过在 shell 中运行以下命令来安装 socks
npm i socks
SOCKS5 客户端选项
您可以在您的 MongoClientOptions
实例中或您的连接 URI 中设置选项来配置连接的 SOCKS5 代理支持。以下表格描述了与 SOCKS5 相关的客户端选项
名称 | 接受值 | 默认值 | 描述 |
---|---|---|---|
proxyHost | 字符串 | null | 指定 SOCKS5 代理的 IPv4 地址、IPv6 地址或域名。 |
proxyPort | 非负整数 | null | 指定 SOCKS5 代理服务器的 TCP 端口号。如果您设置了 proxyHost 选项,则此选项的默认值是 1080 。 |
proxyUsername | 字符串 | null | 指定用于连接到 SOCKS5 代理服务器的用户名。如果您将此选项设置为空字符串,则驱动程序将忽略它。 |
proxyPassword | 字符串 | null | 指定用于连接到 SOCKS5 代理服务器的密码。如果您将此选项设置为空字符串,则驱动程序将忽略它。 |
重要
如果您没有设置 proxyHost
选项,却设置了 proxyPort
、proxyUsername
或 proxyPassword
选项,驱动程序将抛出错误。
示例
此示例展示了如何实例化一个使用 SOCKS5 代理支持的 MongoClient
。以下示例代码指定了代理服务器选项并连接到 MongoDB
// Replace the placeholder with your connection string const uri = "<connection string uri>"; // Replace the placeholders with your SOCKS5 proxy server details const socksOptions = { proxyHost: "<host>", proxyPort: 1080, proxyUsername: "<username>", proxyPassword: "<password>", }; // Create a new client with the proxy server details const client = new MongoClient(uri, socksOptions);
提示
前面的示例代码使用连接 URI 和代理服务器细节的占位符。要运行此代码,您必须将这些占位符替换为您的部署和代理服务器的信息。
更多信息
有关 SOCKS5 代理支持的更多信息,请参阅MongoDB SOCKS5 规范。
API 文档
要了解更多关于本指南中讨论的方法和类型,请参阅以下 API 文档