From 273fb78fd3053c84fc0f938528e875775dec1058 Mon Sep 17 00:00:00 2001 From: jenow Date: Mon, 15 Feb 2021 17:22:54 +0100 Subject: [PATCH 1/3] Handle HTTP Errors --- lib/src/protocols/http.dart | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/src/protocols/http.dart b/lib/src/protocols/http.dart index 692da26c..d254dfe1 100644 --- a/lib/src/protocols/http.dart +++ b/lib/src/protocols/http.dart @@ -1,5 +1,6 @@ import 'dart:convert'; +import 'package:kuzzle/src/kuzzle/errors.dart'; import 'package:kuzzle/src/kuzzle/request.dart'; import 'package:kuzzle/src/kuzzle/response.dart'; import 'package:kuzzle/src/protocols/abstract.dart'; @@ -37,6 +38,9 @@ class HttpProtocol extends KuzzleProtocol { headers: headers, body: jsonEncode(request), ); + if (res.statusCode != 200) { + return Future.error(res.reasonPhrase); + } return Future.value( KuzzleResponse.fromJson(jsonDecode(res.body) as Map), ); From 010ac7418116ae3a2465153d309d9a309031646f Mon Sep 17 00:00:00 2001 From: jenow Date: Mon, 15 Feb 2021 17:25:45 +0100 Subject: [PATCH 2/3] remove unused import --- lib/src/protocols/http.dart | 1 - 1 file changed, 1 deletion(-) diff --git a/lib/src/protocols/http.dart b/lib/src/protocols/http.dart index d254dfe1..32167b97 100644 --- a/lib/src/protocols/http.dart +++ b/lib/src/protocols/http.dart @@ -1,6 +1,5 @@ import 'dart:convert'; -import 'package:kuzzle/src/kuzzle/errors.dart'; import 'package:kuzzle/src/kuzzle/request.dart'; import 'package:kuzzle/src/kuzzle/response.dart'; import 'package:kuzzle/src/protocols/abstract.dart'; From 76a01af2248857622cecb3fc9c0f67de23cfef46 Mon Sep 17 00:00:00 2001 From: jenow Date: Mon, 15 Feb 2021 17:28:04 +0100 Subject: [PATCH 3/3] return raw http error --- lib/src/protocols/http.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/src/protocols/http.dart b/lib/src/protocols/http.dart index 32167b97..57f313e4 100644 --- a/lib/src/protocols/http.dart +++ b/lib/src/protocols/http.dart @@ -38,7 +38,7 @@ class HttpProtocol extends KuzzleProtocol { body: jsonEncode(request), ); if (res.statusCode != 200) { - return Future.error(res.reasonPhrase); + return Future.error(res); } return Future.value( KuzzleResponse.fromJson(jsonDecode(res.body) as Map),