Files
EM2_ERP/em2rp/scratch/test_bad_depot.dart
T

35 lines
1.1 KiB
Dart

import 'dart:convert';
import 'dart:io';
void main() async {
final envFile = File('functions/.env');
final lines = await envFile.readAsLines();
String apiKey = '';
for (var line in lines) {
if (line.startsWith('API_MAPS=')) {
apiKey = line.split('=')[1].replaceAll('"', '');
}
}
final url = 'https://routes.googleapis.com/directions/v2:computeRoutes';
final client = HttpClient();
final request = await client.postUrl(Uri.parse(url));
request.headers.set('Content-Type', 'application/json');
request.headers.set('X-Goog-Api-Key', apiKey);
request.headers.set('X-Goog-FieldMask', 'routes.distanceMeters,routes.duration,routes.polyline.encodedPolyline');
final payload = jsonEncode({
"travelMode": "DRIVE",
"routingPreference": "TRAFFIC_AWARE",
"origin": { "address": "Mon depot" },
"destination": { "address": "25 Imp. du Puits du Suc, Saint-Martin-en-Haut, France" }
});
request.write(payload);
final response = await request.close();
final responseBody = await response.transform(utf8.decoder).join();
print(responseBody.length > 200 ? responseBody.substring(0, 200) : responseBody);
}