sendMessage function
Implementation
Future<void> sendMessage(
Logging? log,
String transportName,
BaseClient? client,
String? url,
AccessTokenFactory? accessTokenFactory,
dynamic content,
bool? logMessageContent,
bool? withCredentials) async {
var headers = <String, String>{};
if (accessTokenFactory != null) {
final token = await accessTokenFactory();
if (token != null) {
headers = {
'Authorization': 'Bearer $token',
};
}
}
final userAgentHeader = getUserAgentHeader();
headers[userAgentHeader.item1] = userAgentHeader.item2;
log?.call(LogLevel.trace,
'($transportName transport) sending data. ${getDataDetail(content, logMessageContent)}.');
final encoding = (content is ByteBuffer)
? Encoding.getByName('')
: Encoding.getByName('UTF-8');
final response = await client?.post(Uri.parse(url ?? ''),
headers: headers, body: content, encoding: encoding);
log?.call(LogLevel.trace,
'($transportName transport) request complete. Response status: ${response?.statusCode}.');
}