Jump to content
s3c0

Webservice JSON + ASP

Recommended Posts

Fala pessoal,

 

estou com um probleminha com uma integração, onde preciso ler um resposta JSON em ASP Clássico.

 

a resposta é

 

{"id":1,"name":"PAC","price":"45.65","custom_price":"45.65","discount":"7.41","currency":"R$","delivery_time":8,"delivery_range":{"min":8,"max":8},"custom_delivery_time":8,"custom_delivery_range":{"min":8,"max":8},"packages":{"price":"45.65","discount":"7.41","format":"box","dimensions":{"height":20,"width":20,"length":20},"weight":"1.00","insurance_value":"1000.00","products":{"id":"teste1","quantity":1}},"additional_services":{"receipt":true,"own_hand":false,"collect":false},"company":{"id":1,"name":"Correios","picture":"https:\/\/sandbox.melhorenvio.com.br\/images\/shipping-companies\/correios.png"}},{"id":2,"name":"EXPRESSO","price":"68.51","custom_price":"68.51","discount":"11.95","currency":"R$","delivery_time":5,"delivery_range":{"min":5,"max":5},"custom_delivery_time":5,"custom_delivery_range":{"min":5,"max":5},"packages":{"price":"68.51","discount":"11.95","format":"box","dimensions":{"height":20,"width":20,"length":20},"weight":"1.00","insurance_value":"1000.00","products":{"id":"teste1","quantity":1}},"additional_services":{"receipt":true,"own_hand":false,"collect":false},"company":{"id":1,"name":"Correios","picture":"https:\/\/sandbox.melhorenvio.com.br\/images\/shipping-companies\/correios.png"}},{"id":3,"name":".Package","price":"33.51","custom_price":"33.51","discount":"15.58","currency":"R$","delivery_time":6,"delivery_range":{"min":5,"max":6},"custom_delivery_time":6,"custom_delivery_range":{"min":5,"max":6},"packages":{"format":"box","dimensions":{"height":20,"width":20,"length":20},"weight":"1.00","insurance_value":"1000.00","products":{"id":"teste1","quantity":1}},"additional_services":{"receipt":true,"own_hand":false,"collect":false},"company":{"id":2,"name":"JadLog","picture":"https:\/\/sandbox.melhorenvio.com.br\/images\/shipping-companies\/jadlog.png"}},{"id":4,"name":".Com","price":"32.63","custom_price":"32.63","discount":"26.48","currency":"R$","delivery_time":5,"delivery_range":{"min":4,"max":5},"custom_delivery_time":5,"custom_delivery_range":{"min":4,"max":5},"packages":{"format":"box","dimensions":{"height":20,"width":20,"length":20},"weight":"1.00","insurance_value":"1000.00","products":{"id":"teste1","quantity":1}},"additional_services":{"receipt":true,"own_hand":false,"collect":false},"company":{"id":2,"name":"JadLog","picture":"https:\/\/sandbox.melhorenvio.com.br\/images\/shipping-companies\/jadlog.png"}}

 

Tenho a seguinte página para receber essa resposta

 

<!--#include file="includes/json2.asp"-->
<%

  Dim objXML, Result
Set objXML = Server.CreateObject("Microsoft.XMLHTTP")
On Error Resume Next
For i = 1 To 3
  objXML.Open "POST" , url, False , "", ""
  objXML.setRequestHeader "content-type", "application/json"
  objXML.setRequestHeader "accept", "application/json"
  objXML.setRequestHeader "authorization", "Bearer " & Bearer
  objXML.Send variavel_json
  If Err.Number = 0 Then
    Result = objXML.ResponseText
  end if
 Exit For
Next

Set objXML = Nothing
  
Result = replace(replace(Result,"[",""),"]","")
  
  a=Split(Result,".png""}},")
  
For Each x In a
	set x = JSON.parse(Result)
    Response.write(x.name & vbNewline)
	Response.write(x.price & vbNewline)
	Response.write(x.delivery_time & vbNewline)
	Response.write(x.company.name & vbNewline)
Next
   
   
   
%>

O que ocorre, é que imprimi somente a última linha

 

Print

.Com 32.63 5 JadLog .Com 32.63 5 JadLog .Com 32.63 5 JadLog .Com 32.63 5 JadLog

 

 

Alguém poderia me dizer onde estou errando?

 

Agradeço a atenção de todos!

 

Abraços

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By ilbett
      Boa noite prezados.
       
      Estou com um problema há alguns dias. Espero que um de vocês tenha uma luz para ele haha.
       
      Estou fazendo uma integração entre a loja de um cliente hospedada na NuvemShop e a automatizadora de marketing RD Station.
      Através do Postman eu faço um GET da NuvemShop e um POST dos dados pegos da NuvemShop para a RD Station.
      O Problema, nesse caso, é que eles nomeiam as strings de formas diferentes.
       
      Vocês conhecem algum intermediador que receba esse POST com os dados da NuvemShop e traduza, por exemplo, "costumer.name" para "name" e envie para a RD?
      Ou algum script que eu possa rodar no Postman para fazer essas "traduções" das strings?
       
      Desde já, muito obrigado!
    • By Overtron8000
      Ola Pessoas,
      Recentemente fiz uma prova para Desenvolvedor Javascript jr em uma empresa e tinha varias questões para escrever o código NA MÃO  e uma delas me deixou encabulado por exigirem que um junior saiba de cór isso era a seguinte pergunta:
       
      Dado o JSON abaixo construa um código que faça o calculo da media do parâmetro "time"  quando "type" for semelhante a "call" e o máximo valor para "time" quando "type for semelhante a "ping". Considere que o array events poderá conter milhões de objetos portanto seu código deve levar em consideração o processamento assíncrono do Node.js de forma que o resultado seja síncrono, ou seja, o codigo so deve completar quando o resultado do s cálculos estiverem prontos.
      JSON : events = { [ {type:"ping", time :10) [ {type:"ping", time: 5) [ {type:"call", time: 99) [ {type:"call", time: 67) [ {type:"ping", time: 7) [ {type:"call", time: 127) }  
      Isso tudo para fazer no resto da folha que sobrou alem da pergunta, se alguém saber uma solução poste ai que estou curioso ate hoje, sei que leva o conceito de promisses assíncronas mas ainda não cheguei nessa parte
       
       
       
       
                                   
       
       
    • By Robson Barros da Rocha
      Boa noite.
       
      Estou com problemas para exibir dados pelo .JSON :( No banco de dados, tenho 3 rows (três resultados), mas, ele mostra somente um. Alguém poderia me dizer o que posso ter errado?
       
      O JSON retornado é:
      [ { "id": 7, "linha": "TESTE", "chegada": "18:45:00", "saida": "19:05:00", "tempoTabela": "0:20", "tempoParada": "TESTE", "previsao": "TESTE", "status": "<span data-viagem=\"1\" class=\"label label-warning\"><i class=\"fa fa-clock\" title=\"Pendente\"></i> Pendente</span>" }, { "id": 8, "linha": "TESTE", "chegada": "18:45:00", "saida": "19:05:00", "tempoTabela": "0:20", "tempoParada": "TESTE", "previsao": "TESTE", "status": "<span data-viagem=\"1\" class=\"label label-warning\"><i class=\"fa fa-clock\" title=\"Pendente\"></i> Pendente</span>" } ] O scrip:
      $.ajax({ type: "GET", url: web +"include/ajax.php", timeout: 3000, datatype: 'JSON', contentType: "application/json; charset=utf-8", cache: false, beforeSend: function() { $('#loading').show(); }, error: function() { $('#loading').hide(); }, success: function(s) { var tr = s; $.each(tr,function(i, data){ if(data.emptyDay) { var item = '<tr><td colspan="10" align="center"><i class="fa fa-times text-danger"></i> <b>'+ data.emptyDay +'</b></td></tr>'; } else { var item = '<tr tr-id="'+ data.id +'"><td>#'+ data.id +'</td><td>'+ data.linha +'</td><td class="center">'+ data.chegada +'</td><td class="center">'+ data.saida +'</td><td class="center">'+ data.tempoTabela +'</td><td class="center">'+ data.tempoParada +'</td><td class="center">'+ data.previsao +'</td><td class="center">'+ data.status +'</td><td><i class="fa fa-pencil text-info" onclick="edit('+ data.id +')" style="cursor:pointer;"></i> | <i class="fa fa-times text-danger" onclick="deletes('+ data.id +')" style="cursor:pointer;"></i></td></tr>'; } $("#trHorarios").html(item); finalizar_viagem(data.id); NProgress.done(); }); } });  
    • By Marcos PP
      Alguém poderia me dar um exemplo de como pegar este retorno em Json para gravar em um banco de dados, a questão do banco e conexões não e necessário, apenas como pegar os retornos para trabalhar com eles


      Esta e a API
      http://click.omie.com/developer-0o843564k
    • By eduh.castro19
      Olá,boa noite a todos.
      Estou com um problema e já não sei como arrumar, toda vez que uso o a função =
       
      $json = file_get_contents('http://localhost/arquivo1.php'); $obj = json_decode($json); echo $obj->nome;  
      Ele me retorna um erro = ( Trying to get property 'name' of non-object in )
      Tenho 3 arquivos (Conexão.php,Arquivo1.php,Arquivo2.php)
      Eles estão assim:
       
      Arquivo1 =
      require('conexão.php'); while ($row = $usuarios->fetch(PDO::FETCH_ASSOC)) {      $nomex = $row['nome'];      $datax = $row['data'];       $encoda= array('nome' => $nomex, 'data' => $datax );     echo json_encode($encoda);} Arquivo2 =
      $json = file_get_contents('http://localhost/arquivo1.php'); $obj = json_decode($json); echo $obj->nome; echo json_last_error_msg(); O erro acontece no Arquivo2
      Já tentei por HTTP HEADER JSON Mas não adiantou,não sei mais o que fazer,se alguem puder ajudar. Agradecerei demais! Boa noite a todos.
       
       
       
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.