NIM SDK 配置 link 和 LBS 域名
更新时间: 2024/07/16 17:21:16
如果您的应用的服务区域为海外数据中心,为满足海外访问域名合规性,您需要自行通过网易云信即时通讯 SDK(简称 NIM SDK)配置海外专属域名,包括 link 域名和 LBS 域名。
域名列表
目前海外仅支持新加坡数据中心,新加坡域名地址如下表所示。
地址类型 | 新加坡域名 |
---|---|
link 域名 | link-sg.netease.im:7000 |
weblink 域名 | weblink01-sg.netease.im:443 |
LBS 域名 | lbs.netease.im |
NIM SDK V10
如果您使用的是 V10.0.0 及以上版本 NIM SDK,请参考以下实现案例:
初始化 SDK 时,通过 SDKOptions.serverConfig
配置服务器地址中的 LBS 和 link 域名相关信息。
JavaserverConfig.defaultLink = "link-sg.netease.im:7000";
serverConfig.lbs = "https://lbs.netease.im/lbs/conf.jsp";
serverConfig.nosUploadLbs = "https://wannos.127.net/lbs";
serverConfig.nosUploadDefaultLink = "https://nosup-hz1.127.net";
serverConfig.nosDownloadUrlFormat = "{bucket}-nosdn.netease.im/{object}";
serverConfig.nosUpload = "nosup-hz1.127.net";
serverConfig.nosSupportHttps = true;
参数说明:
参数 | 类型 |
说明 |
---|---|---|
SDKOption | Object | 可自定义的 SDK 选项,用来进行 SDK 初始化配置。 |
defaultLink | String | IM 默认的 link 服务器地址,当 LBS 不可用时先连接该地址。填 IP/Host:PORT。 |
lbs | String | IM LBS 服务器地址,通过它获取 IM link 地址信息。填 HTTP/HTTPS 地址。 |
nosUploadLbs | String | NOS 上传 LBS 服务器地址。填 HTTP/HTTPS 地址。 |
nosUploadDefaultLink | String | NOS 上传默认的 link 服务器地址,当 NOS LBS 不可用时先连接该地址。填 HTTP/HTTPS 地址。 |
nosDownloadUrlFormat | String | NOS 下载地址拼接模板,用于拼接最终得到的下载地址。 |
nosUpload | String | NOS 上传服务器主机地址(仅 nosSupportHttps=true 时有效,用作 HTTPS 上传时的域名校验及 http header host 字段填充)。填 Host 地址。 |
nosSupportHttps | Boolean | NOS 上传/下载是否都转换为 HTTPS 协议。 |
初始化 SDK 时,在 NIMServerSetting
中配置 LBS 和 link 域名参数,NIMServerSetting
需要您自行创建并注入。
Objective-Csetting.lbsAddress = @"https://lbs.netease.im/lbs/conf.jsp";
setting.linkAddress = @"link-sg.netease.im:7000";
setting.httpsEnabled = YES;
参数说明:
参数 | 类型 |
说明 |
---|---|---|
NIMServerSetting | Object | 配置网易云信服务器相关信息。 |
lbsAddress | String | LBS 地址,默认为网易云信公网提供的链接。SDK 连接时会向 LBS 地址请求得到 Socket 连接地址。填 HTTP/HTTPS 地址。 |
linkAddress | String | Socket 备用地址,当 LBS 请求失败时,尝试直接连接 Socket 备用地址。填 IP/Host:PORT。 |
httpsEnabled | BOOL | NOS 上传/下载是否都转换为 HTTPS 协议。 |
初始化 SDK 时,在 NIM.getInstance
中添加 LBS 和 link 域名参数的配置。
TypeScriptconst nim = NIM.getInstance(
V2NIMLoginServiceConfig: {
lbsUrls: [
"https://lbs.netease.im/lbs/webconf"
],
linkUrl: "weblink01-sg.netease.im:443"
},
)
参数说明:
参数 | 类型 |
说明 |
---|---|---|
NIM.getInstance | Object | IM 的初始化构造函数。 |
lbsUrls | String[] | LBS 地址,默认为网易云信公网提供的链接。SDK 连接时会向 LBS 地址请求得到 Socket 连接地址。填 HTTP/HTTPS 地址。 |
linkUrl | String | Socket 备用地址,当 LBS 请求失败时,尝试直接连接 Socket 备用地址。填 IP/Host:PORT。 |
初始化 SDK 时,添加 LBS 和长连接域名参数的配置。
TypeScriptconst nim = NIM.getInstance(
V2NIMLoginServiceConfig: {
lbsUrls: [
"https://lbs.netease.im/lbs/wxwebconf.jsp"
],
linkUrl: "weblink01-sg.netease.im:443"
},
)
参数说明:
参数 | 类型 |
说明 |
---|---|---|
NIM.getInstance | object | IM 的初始化构造函数。 |
lbsUrls | String[] | LBS 地址,默认为网易云信公网提供的链接。SDK 连接时会向 LBS 地址请求得到 Socket 连接地址。填 HTTP/HTTPS 地址。 |
linkUrl | String | Socket 备用地址,当 LBS 请求失败时,尝试直接连接 Socket 备用地址。填 IP/Host:PORT。 |
您需要自行创建 nim_server.conf
文件,放至 SDK 的同级目录,SDK 会自动识别。nim_server.conf
文件的内容,请参考以下示例:
JSON{
"lbs":"https://lbs.netease.im/lbs/conf.jsp",
"lbs.backup":[
"https://lbs.netease.im/lbs/conf.jsp"
],
"link":"link-sg.netease.im:7000",
"nos_lbs":"https://wannos.127.net/lbs?version=1.0&bucketname=nim",
"nos_uploader":"https://nosup-hz1.127.net",
"nos_uploader_host":"nosup-hz1.127.net",
"nos_downloader":"{bucket}-nosdn.netease.im/{object}",
"https_enabled":true
}
在使用前,请先校验 JSON 格式是否正确。
NIM SDK V9
如果您使用的是 V9.X.X 及以下版本 NIM SDK(但不能低于 V8.10.0),请参考以下实现案例:
初始化 SDK 时,通过 SDKOptions.serverConfig
配置服务器地址中的 LBS 和 link 域名相关信息。
JavaserverConfig.defaultLink = "link-sg.netease.im:7000";
serverConfig.lbs = "https://lbs.netease.im/lbs/conf.jsp";
serverConfig.nosUploadLbs = "https://wannos.127.net/lbs";
serverConfig.nosUploadDefaultLink = "https://nosup-hz1.127.net";
serverConfig.nosDownloadUrlFormat = "{bucket}-nosdn.netease.im/{object}";
serverConfig.nosUpload = "nosup-hz1.127.net";
serverConfig.nosSupportHttps = true;
参数说明:
参数 | 类型 |
说明 |
---|---|---|
SDKOption | Object | 可自定义的 SDK 选项,用来进行 SDK 初始化配置。 |
defaultLink | String | IM 默认的 link 服务器地址,当 LBS 不可用时先连接该地址。填IP/Host:PORT。 |
lbs | String | IM LBS 服务器地址,通过它获取 IM link 地址信息。填 HTTP/HTTPS 地址。 |
nosUploadLbs | String | NOS 上传 LBS 服务器地址。填 HTTP/HTTPS 地址。 |
nosUploadDefaultLink | String | NOS 上传默认的 link 服务器地址,当 NOS LBS 不可用时先连接该地址。填 HTTP/HTTPS 地址。 |
nosDownloadUrlFormat | String | NOS 下载地址拼接模板,用于拼接最终得到的下载地址。 |
nosUpload | String | NOS 上传服务器主机地址(仅 nosSupportHttps=true 时有效,用作 HTTPS 上传时的域名校验及 http header host 字段填充)。填 Host 地址。 |
nosSupportHttps | Boolean | NOS 上传/下载是否都转换为 HTTPS 协议。 |
初始化 SDK 时,在 NIMServerSetting
中配置 LBS 和 link 域名参数,NIMServerSetting
需要您自行创建并注入。
Objective-Csetting.lbsAddress = @"https://lbs.netease.im/lbs/conf.jsp";
setting.linkAddress = @"link-sg.netease.im:7000";
setting.httpsEnabled = YES;
参数说明:
参数 | 类型 |
说明 |
---|---|---|
NIMServerSetting | Object | 配置网易云信服务器相关信息。 |
lbsAddress | String | LBS 地址,默认为网易云信公网提供的链接。SDK 连接时会向 LBS 地址请求得到 Socket 连接地址。填 HTTP/HTTPS 地址。 |
linkAddress | String | Socket 备用地址,当 LBS 请求失败时,尝试直接连接 Socket 备用地址。填 IP/Host:PORT。 |
httpsEnabled | BOOL | NOS 上传/下载是否都转换为 HTTPS 协议。 |
初始化 SDK 时,在 NIM.getInstance
中添加 LBS 和 link 域名参数的配置。
TypeScriptvar nim = window.SDK.NIM.getInstance({
"lbsUrl": "https://lbs.netease.im/lbs/webconf",
"defaultLink": "weblink01-sg.netease.im:443",
"httpsEnabled": true
})
参数说明:
参数 | 类型 |
说明 |
---|---|---|
NIM.getInstance | Object | IM 的初始化构造函数。 |
lbsUrl | String | LBS 地址,默认为网易云信公网提供的链接。SDK 连接时会向 LBS 地址请求得到 Socket 连接地址。填 HTTP/HTTPS 地址。 |
defaultLink | String | Socket 备用地址,当 LBS 请求失败时,尝试直接连接 Socket 备用地址。填IP/Host:PORT。 |
httpsEnabled | Boolean | NOS 上传/下载是否都转换为 HTTPS 协议。 |
您需要自行创建 nim_server.conf
文件,放至 SDK 的同级目录,SDK 会自动识别。nim_server.conf
文件的内容,请参考以下示例:
JSON{
"lbs":"https://lbs.netease.im/lbs/conf.jsp",
"lbs.backup":[
"https://lbs.netease.im/lbs/conf.jsp"
],
"link":"link-sg.netease.im:7000",
"nos_lbs":"https://wannos.127.net/lbs?version=1.0&bucketname=nim",
"nos_uploader":"https://nosup-hz1.127.net",
"nos_uploader_host":"nosup-hz1.127.net",
"nos_downloader":"{bucket}-nosdn.netease.im/{object}",
"https_enabled":true
}
在使用前,请先校验 JSON 格式是否正确。
初始化 SDK 时,添加 LBS 和长连接域名参数的配置。
JavaScriptnew NIM({
"lbsUrls": ["https://lbs.netease.im/lbs/webconf"],
"linkUrl": "weblink01-sg.netease.im:443",
"httpsEnabled": true
})
参数说明:
参数 | 类型 |
说明 |
---|---|---|
NIMInitializeOptions | Object | IM 的初始化构造函数。 |
lbsUrls | String | LBS 地址,默认为网易云信公网提供的链接。SDK 连接时会向 LBS 地址请求得到 Socket 连接地址。填 HTTP/HTTPS 地址。 |
linkUrl | String | Socket 备用地址,当 LBS 请求失败时,尝试直接连接 Socket 备用地址。填IP/Host:PORT。 |
httpsEnabled | Boolean | NOS 上传/下载是否都转换为 HTTPS 协议。 |
初始化 SDK 时,添加 LBS 和长连接域名参数的配置。
TypeScriptgetInstance({
"lbsUrls": ["https://lbs.netease.im/lbs/webconf"],
"linkUrl": "weblink01-sg.netease.im:443",
"httpsEnabled": true
})
参数说明:
参数 | 类型 |
说明 |
---|---|---|
NIMInitializeOptions | Object | IM 的初始化构造函数。 |
lbsUrls | String | LBS 地址,默认为网易云信公网提供的链接。SDK 连接时会向 LBS 地址请求得到 Socket 连接地址。填 HTTP/HTTPS 地址。 |
linkUrl | String | Socket 备用地址,当 LBS 请求失败时,尝试直接连接 Socket 备用地址。填IP/Host:PORT。 |
httpsEnabled | Boolean | NOS 上传/下载是否都转换为 HTTPS 协议。 |
初始化 SDK 时,通过 NIMServerConfig
配置服务器地址中的 LBS 和 link 域名相关信息。
DartNIMServerConfig config = NIMServerConfig(
defaultLink: "link-sg.netease.im:7000",
lbs: "https://lbs.netease.im/lbs/conf.jsp",
nosUploadLbs: "https://wannos.127.net/lbs",
nosUploadDefaultLink: "https://nosup-hz1.127.net",
nosDownloadUrlFormat: "{bucket}-nosdn.netease.im/{object}",
nosUpload: "nosup-hz1.127.net",
nosSupportHttps: true);
if (Platform.isAndroid) {
final directory = await getExternalStorageDirectory();
options = NIMAndroidSDKOptions(
appKey: appKey,
shouldSyncStickTopSessionInfos: true,
serverConfig: config,
sdkRootDir:
directory != null ? '${directory.path}/NIMFlutter' : null);
} else if (Platform.isIOS) {
final directory = await getApplicationDocumentsDirectory();
options = NIMIOSSDKOptions(
appKey: appKey,
shouldSyncStickTopSessionInfos: true,
sdkRootDir: '${directory.path}/NIMFlutter',
apnsCername: 'ENTERPRISE',
serverConfig: config,
pkCername: 'DEMO_PUSH_KIT',
);
}
参数说明:
参数 | 类型 |
说明 |
---|---|---|
NIMServerConfig | Object | 配置专属服务器的地址。 |
defaultLink | String | IM 默认的 link 服务器地址,当 LBS 不可用时先连接该地址。填IP/Host:PORT。 |
lbs | String | IM LBS 服务器地址,通过它获取 IM link 地址信息。填 HTTP/HTTPS 地址。 |
nosUploadLbs | String | NOS 上传 LBS 服务器地址。填 HTTP/HTTPS 地址。 |
nosUploadDefaultLink | String | NOS 上传默认的 link 服务器地址,当 NOS LBS 不可用时先连接该地址。填 HTTP/HTTPS 地址。 |
nosDownloadUrlFormat | String | NOS 下载地址拼接模板,用于拼接最终得到的下载地址。 |
nosUpload | String | NOS 上传服务器主机地址(仅 nosSupportHttps=true 时有效,用作 HTTPS 上传时的域名校验及 http header host 字段填充)。填 Host 地址。 |
nosSupportHttps | boolean | NOS 上传是否需要支持 HTTPS。 |
目前仅支持 Android 和 iOS 平台。
:::