post method
Sets auth headers in provided headers
and sends HTTP POST request to
given methodUrl
.
Implementation
Future<Map<String, dynamic>> post(String methodUrl,
{Map<String, dynamic>? body, Map<String, String>? headers}) async {
final url = baseUri + methodUrl;
headers = await _setAuthHeader(headers);
body ??= {};
Map<String, dynamic> responseMap;
var response =
await http.post(Uri.parse(url), headers: headers, body: body);
try {
responseMap = _decodeResponse(response);
} on AuthException {
await authenticate();
headers = await _setAuthHeader(headers);
response = await http.post(Uri.parse(url), headers: headers, body: body);
responseMap = _decodeResponse(response);
}
return responseMap;
}