文档菜单
文档首页
/ / /
Kotlin 协程
/ /

通过 SOCKS5 代理连接到 MongoDB

本页内容

  • 概述
  • SOCKS5 代理设置
  • 示例
  • 在 MongoClientSettings 中指定代理设置
  • 在连接字符串中指定代理设置
  • API 文档

在本指南中,您可以了解如何使用MongoDB Kotlin驱动程序通过SOCKS5代理连接到MongoDB。SOCKS5是一种通过代理服务器与网络服务通信的标准化协议。

提示

有关SOCKS5协议的更多信息,请参阅维基百科上的SOCKS.

代理设置指定了SOCKS5代理服务器地址和您的认证凭据。您可以在MongoClientSettings实例或连接字符串中指定您的设置。MongoClientSettings 或连接字符串中指定您的设置。

以下表格描述了SOCKS5客户端选项

名称
接受值
描述
proxyHost
字符串
指定SOCKS5代理IPv4地址、IPv6地址或主机名。您必须提供此值才能连接到SOCKS5代理。
proxyPort
非负整数
指定SOCKS5代理服务器的TCP端口号。如果您设置了proxyHost的值,此选项默认为1080,但您也可以指定不同的端口号。
proxyUsername
字符串
指定用于认证SOCKS5代理服务器的用户名。驱动程序忽略此设置的null和空字符串值。驱动程序要求您传递proxyUsernameproxyPassword的值,或者省略这两个值。
proxyPassword
字符串
指定用于认证SOCKS5代理服务器的密码。驱动程序忽略此设置的null和空字符串值。驱动程序要求您传递proxyUsernameproxyPassword的值,或者省略这两个值。

以下示例展示了如何通过使用 SOCKS5 代理连接到 MongoDB 的 MongoClient。代理设置可以在 MongoClientSettings 实例或连接字符串中指定。这些示例使用了 SOCKS5 代理设置 部分中描述的占位符值。请将占位符替换为您的代理规范和凭据。

以下代码示例展示了如何在创建 MongoClientSettings 实例时,使用 applyToSocketSettings() 构建方法指定 SOCKS5 代理设置

val uri = "<connection string>"
val mongoClient = MongoClient.create(
MongoClientSettings.builder()
.applyConnectionString(ConnectionString(uri))
.applyToSocketSettings{ builder ->
builder
.applyToProxySettings{ proxyBuilder ->
proxyBuilder
.host("<proxyHost>")
.port("<proxyPort>".toInt())
.username("<proxyUsername>")
.password("<proxyPassword>")
.build()
}
}
.build()
)

以下代码示例展示了如何在您的连接字符串中指定 SOCKS5 代理设置

val connectionString = ConnectionString(
"mongodb+srv://<user>:<password>@<cluster-url>/?" +
"proxyHost=<proxyHost>" +
"&proxyPort=<proxyPort>" +
"&proxyUsername=<proxyUsername>" +
"&proxyPassword=<proxyPassword>"
)
val mongoClient = MongoClient.create(connectionString)

要了解更多关于本指南中讨论的方法和类型,请参阅以下 API 文档

返回

TLS/SSL