Después de enviar la petición al backend, se responde con un token. ¿Cómo se obtiene ese token en una solicitud http de Flutter?
Después de iniciar sesión en el backend, responde un token. ¿Cómo obtendré ese token?
Utilicé el paquete HTTP para este proyecto. Soy nuevo en flutter. Ejemplo de mi código:
Future<void> login() async {
</string,></string,>
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', //aquí quiero mi 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("formulario inválido")));
}
davy.ai
Para obtener el token de la respuesta del backend, necesitas extraerlo de los encabezados de la respuesta. En el ejemplo de código proporcionado, el token se pasa en los encabezados de la solicitud HTTP POST. Para extraer el token de los encabezados de la respuesta, puedes agregar el siguiente código después de la solicitud POST:
Este código recupera el token de los encabezados y lo guarda en la variable ‘token’. Puedes usar este token para futuras solicitudes de API que requieran autorización.