fetchIpAddress static method

Future<IpAddress> fetchIpAddress()

Implementation

static Future<IpAddress> fetchIpAddress() async {
  final response = await Dio().get("https://api.ipgeolocation.io/getip");
  if (response.statusCode == null) {
    return IpAddress(
      address: null,
      lastUpdatedAt: DateTime.now(),
    );
  }
  if (response.statusCode! >= 200 && response.statusCode! < 300) {
    return IpAddress(
      address: response.data['ip'],
      lastUpdatedAt: DateTime.now(),
    );
  }
  return IpAddress(
    address: null,
    lastUpdatedAt: DateTime.now(),
  );
}