Watch-IP

Watch-IP'yi Flutter ve Dart ile Kullanma

watch_ip_sdk (pub.dev, v0.1.2), Flutter uygulamaları ve düz Dart için GET /v1/geo'yu sarmalar; Flutter web'de de çalışması için yalnızca standart kütüphaneye dayanan bir istemci yerine package:http üzerine kurulmuştur.

Kurulum

Dart 3.0+ / herhangi bir güncel kararlı Flutter kanalı gerektirir. package:http'ye bağımlıdır — dart:io'nun HttpClient'ı Flutter web'de kullanılamadığından, diğer SDK'ların sıfır bağımlılık yaklaşımına bilinçli bir istisnadır.

Flutter

flutter pub add watch_ip_sdk

Hızlı başlangıç

Gerçek bir tarayıcı sekmesinde çalışan bir Flutter web derlemesi, Origin'i kendiliğinden doğru şekilde gönderir. Yerel bir iOS/Android/masaüstü derlemesi veya bir sunucudaki düz Dart bunu yapmaz — orada origin'i açıkça geçirin. Bu SDK her zaman yalnızca yayınlanabilir anahtara ihtiyaç duyar; yayınlanan bir uygulamaya asla bir gizli anahtar gömmeyin.

Dart

import 'package:watch_ip_sdk/watch_ip_sdk.dart';

final client = WatchIP('wip_pub_xxxxxxxx');
final geo = await client.getGeo();

print('${geo.country} ${geo.city} ${geo.timezone}');

Hata işleme ve zaman aşımları

Her başarısızlık, bir status ve kararlı bir code içeren bir WatchIPError fırlatır. timeout içinde tamamlanmayan bir istek, network_error koduyla bir tane fırlatır.

Dart

try {
  final geo = await client.getGeo(timeout: const Duration(seconds: 5));
} on WatchIPError catch (e) {
  print('${e.code} ${e.status} ${e.message}');
}

Bu SDK'nın kapsamadıkları

Bu paket yalnızca GET /v1/geo'yu çağırır. IP sorgulama, e-posta doğrulama veya risk kontrolleri için henüz bir Dart istemcisi yoktur — bu endpoint'ler gizli bir anahtar gerektirdiğinden, bunları uygulamanın kendisinden değil, doğrudan kendi sunucu tarafınızdan package:http ile çağırın. Kimlik doğrulama kılavuzuna bakın.

İlgili sayfalar