Respondido

Manipulando dados JSON


Boa tarde, tudo bem?

Estou começando com o blip e surgiu uma duvida como exibir mais de um dado da resposta?


Estou trabalhando com uma API do vagalume (para brincar e aprender)


API que estou usando: https://api.vagalume.com.br/search.art?q=pagode&limit=5


Retorno da API:


{
"response":{"numFound":133,"start":0,"numFoundExact":true,"docs":[
{
"id":"b3ade68b6gc79beda3",
"url":"/turma-do-pagode/",
"band":"Turma do Pagode",
"fmRadios":["147015499779090|samba-e-pagode",
"147017028452123|top-50-brasil"]},
{
"id":"b3ade68b7g681d0ea3",
"url":"/pagodez/",
"band":"Pagodêz"},
{
"id":"b3ade68b7g566d0ea3",
"url":"/pagodeuses/",
"band":"Pagodeuses"},
{
"id":"b3ade68b7g12a60ea3",
"url":"/pagodebeer/",
"band":"Pagodebeer"},
{
"id":"b3ade68b6ga40eeda3",
"url":"/pagodenovo/",
"band":"Pagodenovo"}]
},
"highlighting":{
"b3ade68b6gc79beda3":{},
"b3ade68b7g681d0ea3":{},
"b3ade68b7g566d0ea3":{},
"b3ade68b7g12a60ea3":{},
"b3ade68b6ga40eeda3":{}}}

meu codigo :


  function run(exbanda) {
const json = exbanda;
const obj = JSON.parse(json);

const nome = obj.response.docs;


return nome[0].band;
}

A ideia e exibir uma lista com os resultados acessando só a propriedade “band” que seria o nome e deixar o usuário Selecionar a desejada. como faço para exibir os resultados que retorna da API em formato de lista?

icon

Melhor resposta por Bruno 26 July 2022, 18:14

Veja o original

5 comentários

Reputação 7

Oi @Gabriel_Santos1 tudo bem?


Então, pra isso você vai precisar percorrer todo o seu objeto response.docs e, pra cada band que aparecer, adicionar numa mensagem. Aí vai depender da formatação que você deseja colocar.



Um exemplo simples de como pode ser feito



obj.response.docs.forEach(function(item){
msg = msg.concat(item.band, "\n");
});

Esse post aqui também pode te ajudar:


Obrigado pela ajuda!!!


Reputação 7

Boa @Gabriel_Santos1. Qualquer coisa, é só chamar :smileoh:

Gabriel, como você retornou a quantidade de itens? Sua API trás isso?

Bom dia,

sim a API me retorna o numero de resultados encontrados, dai só coloquei ela antes do retorno do script

Comente