Problema com retorno json/js em execução de script

Bom dia,
Estou trabalhando com uma API que retorna vários arrays, o builder não consegue consumir diretamente nesses casos(segundo pesquisa que fiz aqui no fórum).
Então parti para execução de script porem estou tendo erro ao retornar o campo especifico que quero, confesso que sei bem pouco de JS por isso acho que estou tendo dificuldade.
Olhando o debug da ferramenta recebo o seguinte json:
Faço minha requisição http e salvo na variável retornojson :

retornojson: {“requisicoes”: [{“req_numero”: “898989/20/001”, “usu_codigo”: “87878”, “usu_login”: “nome”, “req_data_emissao”: “2020-11-27 17:19:40.707000”, “req_obs”: “None”, “req_aberto”: “False”, “req_baixado”: “True”, “req_cancelado”: “False”, “id_tipo_req”: “1”}], “itens”: [{“dsc_produto_completo”: “COLA PVA 4530 ( RETIFICADO ) - COLA FECHAMENTO CAIXA 62X62 RETIFICA”, “cot_data”: “2020-11-27 00:00:00”, “id_req_numero”: “4444”, “ped_data_entrega”: “2020-12-04 00:00:00”, “req_aprovada”: “True”, “req_reprovada”: “False”, “req_data_aprov”: “2020-11-27 17:20:31.413000”, “req_analisada”: “True”, “cot_numero”: “444444/20/001”}, {“dsc_produto_completo”: “COLA PVA 4530 ( RETIFICADO ) - COLA FECHAMENTO CAIXA 62X62 RETIFICA”, “cot_data”: “2020-11-27 00:00:00”, “id_req_numero”: “44444444”, “ped_data_entrega”: “2020-12-14 00:00:00”, “req_aprovada”: “True”, “req_reprovada”: “False”, “req_data_aprov”: “2020-11-27 17:20:31.413000”, “req_analisada”: “True”, “cot_numero”: “444444/20/001”}, {“dsc_produto_completo”: “COLA PVA 4530 ( RETIFICADO ) - COLA FECHAMENTO CAIXA 62X62 RETIFICA”, “cot_data”: “2020-11-27 00:00:00”, “id_req_numero”: “444444”, “ped_data_entrega”: “2021-01-04 00:00:00”, “req_aprovada”: “True”, “req_reprovada”: “False”, “req_data_aprov”: “2020-11-27 17:20:31.413000”, “req_analisada”: “True”, “cot_numero”: “019826/20/001”}, {“dsc_produto_completo”: “COLA PVA 4530 ( RETIFICADO ) - COLA FECHAMENTO CAIXA 62X62 RETIFICA”, “cot_data”: “2020-11-27 00:00:00”, “id_req_numero”: “4444444”, “ped_data_entrega”: “2021-01-15 00:00:00”, “req_aprovada”: “True”, “req_reprovada”: “False”, “req_data_aprov”: “2020-11-27 17:20:31.413000”, “req_analisada”: “True”, “cot_numero”: “444444/20/001”}]}

No JS estou tentando da seguinte forma:

function run(retornojson) {
var json = JSON.parse(retornojson);
var valor_campo = json.retornojson.requisicoes.array[0].req_numero;
return valor_campo;

}

Erro que mostra no Debug:

Queria pegar um ou mais valores para retornar, no caso estava tentando pegar apenas 1 campo.

Boa tarde Wilian,

Conforme o erro, não exite o objeto array dentro do seu json:
image

E o retornojson tamém não existe mais, pois você jogou o valor dele já parseado dentro na nova variável json.

Então pra chamar o que você precisa, tenta o seguinte:
json.requisicoes[0].req_numero;

Se quiser chamar os itens, basta jogar num for e iterar sobre os valores de itens[i]

Abraço.

2 Curtidas

Boa tarde, entendi, cai um pouco no meu conhecimento de js que não é muito bom.
Testei aqui conforme sua sugestão, porem continuar o mesmo erro.

Consegue mandar aqui exatamente o conteúdo do json? o que tem dentro desse “retornojson”

Senão tenta assim: json.retornojson.requisicoes[0].req_numero;

Deu certo com esse aqui:
json.retornojson.requisicoes[0].req_numero;
Eu estava fazendo o debug mas estava apenas salvando o código, descobri que precisa publicar a alteração hehe
Obrigado pela ajuda.

1 Curtida

É eu ia perguntar se você estava publicando o bot… pq o erro ainda era o mesmo.

Que bom que deu certo então.

Valeu

1 Curtida

Este tópico foi fechado automaticamente 7 dias depois da úlima resposta. Novas respostas não são mais permitidas.