Was passiert, wenn das senden des Feedback nicht in 10 sekunden erfolgreich war, kommt dann trotzdem die Meldung das es fiunktioiet hat?
Was passiert, wenn das senden des Feedback nicht in 10 sekunden erfolgreich war, kommt dann trotzdem die Meldung das es fiunktioiet hat? Wrd dann weiter versucht bis es erfogrech ist?
import 'dart:convert';
import 'package:linux_assistant/models/action_entry.dart'; import 'package:http/http.dart' as http; import 'package:linux_assistant/services/linux.dart';
class FeedbackService {
static Future
if (!includeSearchTermnAndSearchResults) {
searchTerm = "!Not included!";
} else {
for (var element in entries) {
entriesJson.add(element.toJson());
}
}
Map<String, dynamic> environment;
if (!includeBasicSystemInformation) {
environment = <String, dynamic>{};
} else {
environment = Linux.currentenvironment.toJson();
}
http.Response response = await http
.post(
Uri.parse('https://feedback.server-jean.de/submit/'),
headers: <String, String>{
'Content-Type': 'application/json; charset=UTF-8',
},
body: jsonEncode(<String, dynamic>{
'message': message,
'entries': entriesJson,
'searchTerm': searchTerm,
'environment': environment,
}),
)
.timeout(const Duration(seconds: 10));
return (response.statusCode == 200);
} }
Der Timeout einfach auf 60 Sekunden erhöhen, damit es länger Zeit hat es zu senden. Wenn es nicht erfolgreich war, eine Meldung an den Benutzer, dass es nicht funktioniert hat.
Es wird bei einem Timeout nie der Code 200 ausgegeben. Damit wird linux-assistant wie gewollt eine Fehlermeldung absenden. Die Größe der gesendeten Daten ist so marginal, dass die 10 Sekunden mehr als ausreichen sollten, auch bei schlechtem Netz. Konnte bis jetzt keine derartigen Fehler erkennen.