getSuggestedGroupsData method
Implementation
Future<List<CommunitiesList>> getSuggestedGroupsData(
final int pageNumber) async {
try {
/*final client = Sigv4Client(
accessKey: ApiConfig.secretKey,
keyId: ApiConfig.accessKey,
region: ApiConfig.region,
serviceName: ApiConfig.service,
);*/
const querySize = "5";
const type = "BUSINESS";
const longitude = "77.616961";
const latitude = "12.954044999999999";
const radius = "25";
/*final query = {
"page": pageNumber,
"size": querySize,
"longitude": longitude,
"type": type,
"latitude": latitude,
"radius": radius
};
final request = client.request(ApiConfig.communityGetPath, query: query);
request.headers.addAll(<String, String>{
"x-api-key": ApiConfig.apiKey,
"cdauthtoken": "Bearer ${ApiConfig.idToken}"
});
final value = await http.get(request.url, headers: request.headers);*/
final SharedPreferences prefs = await _prefs;
final String? userId = prefs.getString(ApiConfig.kcUserId); // To Do
final String? apiKey = prefs.getString(ApiConfig.kcAPIKey);
final Dio dio = Dio();
final value = await dio.get(
ApiConfig.communityInfoPath,
options: Options(
headers: {"x-api-key": apiKey, "content-type": "application/json"},
),
queryParameters: {
"page": pageNumber,
"size": querySize,
"radius": radius
},
);
final jsonData = value.data;
// final jsonData = jsonDecode(utf8.decode(value.bodyBytes));
final List<CommunitiesList> feedPostUsers = [];
// ignore: avoid_dynamic_calls
for (final feed in jsonData["_embedded"]["communityList"]) {
// ignore: avoid_dynamic_calls
final CommunitiesList groupList =
CommunitiesList.fromJson(feed as Map<String, dynamic>);
feedPostUsers.add(groupList);
}
return feedPostUsers;
} catch (error) {
rethrow;
}
}