mobdr/lib/network/get_ip_address.dart

27 lines
645 B
Dart

import 'package:http/http.dart' as http;
import 'dart:convert';
import 'package:mobdr/service/logger_util.dart';
Future<String> getPublicIPAddress() async {
try {
Stopwatch stopwatch = Stopwatch()..start();
var response = await http
.get(Uri.parse('https://api.bigdatacloud.net/data/client-ip'));
stopwatch.stop();
// log tracker
LoggerUtil.dblog(
'LOG', 'MOBDR', 'Get IPAddress', stopwatch.elapsedMilliseconds);
if (response.statusCode == 200) {
var data = json.decode(response.body);
return data['ipString'];
}
} catch (e) {
print(e.toString());
}
return '127.0.0.1';
}