‹ Toutes les intégrations
Commencer
Dart
IshedDB depuis un serveur Dart, par l'API HTTPS, avec dart:io.
TYPE D'INTÉGRATION
IshedDBAPI HTTPS
IshedDB et Dart : présentation
HttpClient de dart:io envoie les requêtes JSON depuis vos serveurs et outils Dart.
La clé d'accès ne figure jamais dans le code : elle est lue dans les variables d'environnement ISHED_URL et ISHED_KEY, sur votre serveur.
Exemple
import 'dart:convert';
import 'dart:io';
final base = '${Platform.environment['ISHED_URL']!.replaceAll(RegExp(r'/$'), '')}/v1/bases/DB/collections/patients';
final key = Platform.environment['ISHED_KEY']!;
final http = HttpClient()..connectionTimeout = const Duration(seconds: 10);
Future<Map<String, dynamic>> call(String path, Object body) async {
final request = await http.postUrl(Uri.parse('$base$path'));
request.headers.set(HttpHeaders.authorizationHeader, 'Bearer $key');
request.headers.contentType = ContentType.json;
request.write(jsonEncode(body));
final response = await request.close();
final text = await response.transform(utf8.decoder).join();
if (response.statusCode >= 300) throw HttpException('IshedDB : ${response.statusCode}');
return jsonDecode(text) as Map<String, dynamic>;
}
Future<void> main() async {
await call('/documents', {'data': {'nom': 'Awa Diop', 'ville': 'Dakar'}});
final found = await call(':query', {'where': [['ville', '==', 'Dakar']], 'limit': 20});
for (final doc in found['documents'] as List) {
print(doc['data']['nom']);
}
http.close();
}
✓ Cet exemple est exécuté par nos tests contre un vrai serveur IshedDB.
Articles et documentation
Vous voulez voir votre technologie ici ?
Dites-nous ce que vous utilisez : nous écrivons l'exemple et nous le vérifions.
Nous écrire