...
This commit is contained in:
@@ -109,21 +109,24 @@ class ApiClient {
|
||||
bool requiresAuth = true,
|
||||
}) async {
|
||||
// build final query params including auth if needed
|
||||
final Map<String, dynamic> finalParams = {};
|
||||
final originalUri = Uri.parse(url);
|
||||
final queryParams = <String, String>{...originalUri.queryParameters};
|
||||
|
||||
if (requiresAuth) {
|
||||
final token = await TokenStorage.getToken();
|
||||
final username = await TokenStorage.getUsername();
|
||||
if (token != null && username != null) {
|
||||
finalParams['token'] = token;
|
||||
finalParams['username'] = username;
|
||||
queryParams['token'] = token;
|
||||
queryParams['username'] = username;
|
||||
}
|
||||
// Guest mode: proceed without token — let backend decide
|
||||
}
|
||||
|
||||
if (params != null) finalParams.addAll(params);
|
||||
if (params != null) {
|
||||
queryParams.addAll(params.map((k, v) => MapEntry(k, v?.toString() ?? '')));
|
||||
}
|
||||
|
||||
final uri = Uri.parse(url).replace(queryParameters: finalParams.map((k, v) => MapEntry(k, v?.toString())));
|
||||
final uri = originalUri.replace(queryParameters: queryParams);
|
||||
|
||||
late http.Response response;
|
||||
try {
|
||||
@@ -133,7 +136,7 @@ class ApiClient {
|
||||
throw Exception('Network error: $e');
|
||||
}
|
||||
|
||||
return _handleResponse(url, response, finalParams);
|
||||
return _handleResponse(url, response, queryParams);
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
Reference in New Issue
Block a user