Publicar matriz usando http en flutter
Oct 12 2020
¿Alguien sabe cómo publicar una matriz usando http?
var headers = {"Accept": "application/json"};
var url = "https://...."
var response = await http.post(url,
body: {
....
},
Tengo un parámetro llamado commentList. Necesito pasar comment[0], comment[1]... dentro del cuerpo.
¿Cómo usar for loopdentro del cuerpo?
for(var i in list){
"comments"+"["+index+"]" = i;
index ++;
}
Aquí la clave y el valor del cartero
Respuestas
BilalŞimşek Oct 12 2020 at 02:02
si necesita combinar comentarios por un motivo específico, puede hacerlo así.
List commentList = ['comment1','comment2','comment3'];
Map<String, dynamic> body;
combinarlos:
String comments ='';
commentList.forEach((comment){
comments +=comment+' ';
});
body = {'combinedComments':comments};
luego publique:
var headers = {"Accept": "application/json"};
var url = "https://...."
var response = await http.post(url,
body: this.body);
o simplemente use json encode para convertir su lista en cadena;
Map<String,dynamic> body = {'comments' :jsonEncode(commentList)};
y usa esto como cuerpo para publicar.
Tony Oct 12 2020 at 14:25
Me las arreglé para arreglarlo.
int count = 0;
var url = "https://xxx";
var response = await http.post(url,
body: {
for (var i in list) 'comments[${count++}]':i,
....
},
headers: headers);