mqttid后缀自动追加时间戳防止冲突 web服务器handler调用加入jwt解码后的参数 服务发现新增从本地获取全部ip进行地址匹配

This commit is contained in:
qmqz
2025-01-09 17:03:27 +08:00
parent 0935d5e017
commit 0447c27274
4 changed files with 33 additions and 5 deletions

View File

@@ -1,4 +1,5 @@
import 'dart:async';
import 'dart:io';
import 'package:dio/dio.dart';
import 'package:EasyDartModule/base/discovery/Discovery.dart';
@@ -17,11 +18,24 @@ class NacosDiscovery implements Discovery {
Future<bool> registerInstance(String serviceName, String ip, int port,
{String groupName = 'DEFAULT_GROUP'}) async {
try {
//获取本机网卡ip
String? nip;
for (var interface in await NetworkInterface.list()) {
for (var addr in interface.addresses) {
if (addr.address.startsWith(ip)) {
nip = addr.address;
break;
}
}
if (nip != null) {
break;
}
}
final response = await dio.post(
'/nacos/v2/ns/instance',
queryParameters: {
'serviceName': serviceName,
'ip': ip,
'ip': nip ?? ip,
'port': port,
'groupName': groupName,
'namespaceId': config.namespaceId,
@@ -40,7 +54,7 @@ class NacosDiscovery implements Discovery {
final rr = await dio
.put("/nacos/v1/ns/instance/beat", queryParameters: {
'serviceName': serviceName,
'ip': ip,
'ip': nip ?? ip,
'port': port,
'groupName': groupName,
'namespaceId': config.namespaceId,