After log in backend responding a token. Now how will get that that token?
I used HTTP package for this project. I am new to flutter. my code example:
Future<void> login() async {
if (_password.text.isNotEmpty && _number.text.isNotEmpty) {
final response = await http.post(
Uri.parse(
'https://api.azabazar.com/api/login/?fbclid=IwAR2Sz4ky31HCG4g2Sbhn08LV3QqV76YEaIIQwpRavXRB1A4o0fq4aiQ22kE'),
headers: <String, String>{
'Content-Type': 'application/json; charset=UTF-8',
HttpHeaders.authorizationHeader: 'Basic your_api_token_here', //here i want my token
},
body: jsonEncode(<String, String>{
"username": _number.text,
"password": _password.text,
}),
);
if (response.statusCode == 201) {
const Text("Loged in");
} else {
throw Exception('Failed to find account.');
}
} else {
ScaffoldMessenger.of(context)
.showSnackBar(const SnackBar(content: Text("invalid form")));
}
}
CodePudding user response:
I assume that you've got something like this from server:
{
"data": {
"token": "TOKEN"
...
}
}
You can get the token like this:
if (response.statusCode == 201) {
final decodedResponse = jsonDecode(response.body) as Map;
final token = decodedResponse['data']['token'];
} else {
throw Exception('Failed to find account.');
}