J'ai ce simple snippet dart :
import 'package:http/http.dart' as http;
Client _http = new BrowserClient();
final response = await _http
.post(url, headers: someHeader, body: someValue);
Le serveur pour la requête en cours, renvoie Bad Request 400
réponse. Je veux être capable d'obtenir le code d'état pour certaines raisons. Mais dès que le _http.post
est appelé, j'obtiens cette erreur :
POST http://localhost/path 400 (Bad Request)
Mise en place du bloc try/catch
ne sert à rien, puisque l'exception détectée est ClientException
qui ne contient aucune information sur le code d'état et le corps de la réponse (ce qui est important ici). Comment puis-je gérer les codes d'état ici, sans lancer d'exceptions ?
UPDATE :
J'ai ce bout de phrase après _http.post()
appeler :
if (response.statusCode == 400) {
// manage bad request
}
Mais le response
es null
donc le statusCode
n'est pas accessible ici.
UPDATE 2 : Je reçois la demande sur le serveur et je peux la tracer sur le serveur. Comme je l'ai mentionné, le serveur envoie un 400 Bad Request
et fonctionne très bien. Mais obtenir la réponse en Dart provoque l'erreur.