getSession static method
Implementation
static Future<bool> getSession() async {
if (myConfig == null ||
myConfig!.serverConfig == null ||
myConfig!.config.apiServerUrl.isEmpty) return false;
final url = Uri.parse('${myConfig!.config.apiServerUrl}/getSession/');
// <!-- http.Response response = await htt!p.get(url);
http.Client client = http.Client();
if (client is BrowserClient) {
logger.finest('client.withCredentials');
client.withCredentials = true;
}
http.Response response = await client.get(url).catchError(
(error, stackTrace) => throw HycopUtils.getHycopException(
error: error,
defaultMessage: 'client.get(getSession) Failed !!!',
),
);
// -->
var responseBody = utf8.decode(response.bodyBytes);
var jsonData = jsonDecode(responseBody);
logger.finest('jsonData=$jsonData');
if (jsonData.isEmpty) {
_currentLoginUser = UserModel(logout: true);
} else {
bool logined = jsonData['logined'] ?? false;
String userId = jsonData['user_id'] ?? '';
String serverType = jsonData['server_type'] ?? '';
logger.finest('getSession($logined, $userId, $serverType)');
if (logined) {
_currentLoginUser = UserModel(userData: {'userId': userId});
HycopFactory.serverType = ServerType.fromString(serverType);
return true;
}
}
return false;
}