Foros del Web » Programando para Internet » Javascript »

Consulta JSon soy nuevo en esto

Estas en el tema de Consulta JSon soy nuevo en esto en el foro de Javascript en Foros del Web. Buenas, como están? tengo un servicio .NET que me retorna el List de un objeto usuario. la respuesta está en JSon y es de la ...
  #1 (permalink)  
Antiguo 01/07/2014, 08:01
Avatar de Panshop  
Fecha de Ingreso: abril-2009
Ubicación: Santiago
Mensajes: 87
Antigüedad: 15 años, 1 mes
Puntos: 0
Consulta JSon soy nuevo en esto

Buenas, como están?
tengo un servicio .NET que me retorna el List de un objeto usuario. la respuesta está en JSon y es de la siguiente manera:

Código PHP:
<string xmlns="http://tempuri.org/">[{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":4,"NId_perfil":1155,"NNum_rut":10584082,"SGls_nombre":"Juan","SCod_cuenta":"jancan","SCod_password":"12345","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"Ancan","SGls_apellido_materno":"","SDv_rut":"9"},{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":13,"NId_perfil":1155,"NNum_rut":10584080,"SGls_nombre":"Marco","SCod_cuenta":"msuazo","SCod_password":"msuazo","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"Suazo","SGls_apellido_materno":"","SDv_rut":"2"},{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":15,"NId_perfil":1122,"NNum_rut":10584082,"SGls_nombre":"Administrador","SCod_cuenta":"gallendes","SCod_password":"joi7jiuml","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"","SGls_apellido_materno":"tratos","SDv_rut":"9"},{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":16,"NId_perfil":1155,"NNum_rut":11072809,"SGls_nombre":"Juan","SCod_cuenta":"jchavez","SCod_password":"claudia","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"Chavez","SGls_apellido_materno":"","SDv_rut":"3"},{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":17,"NId_perfil":1155,"NNum_rut":11994419,"SGls_nombre":"German","SCod_cuenta":"gcabrera","SCod_password":"210372","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"Cabrera","SGls_apellido_materno":"","SDv_rut":"8"},{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":20,"NId_perfil":145,"NNum_rut":17203522,"SGls_nombre":"Jose Francisco","SCod_cuenta":"jfhurtado","SCod_password":"123","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"Hurtado","SGls_apellido_materno":"Ruiz-Tagle","SDv_rut":"1"},{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":21,"NId_perfil":1122,"NNum_rut":10584082,"SGls_nombre":"Roberto","SCod_cuenta":"tratos","SCod_password":"tratos","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"Puga","SGls_apellido_materno":"Y.","SDv_rut":"9"},{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":22,"NId_perfil":1155,"NNum_rut":18084387,"SGls_nombre":"Nazareno","SCod_cuenta":"nfigueroa","SCod_password":"supervisor","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"Figueroa","SGls_apellido_materno":"","SDv_rut":"6"},{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":23,"NId_perfil":1155,"NNum_rut":10584082,"SGls_nombre":"Jose Luis","SCod_cuenta":"jlramirez","SCod_password":"jose","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"Ramirez","SGls_apellido_materno":"","SDv_rut":"9"},{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":24,"NId_perfil":1155,"NNum_rut":10584082,"SGls_nombre":"Manuel","SCod_cuenta":"mcorrea","SCod_password":"manuel","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"Correa","SGls_apellido_materno":"","SDv_rut":"9"},{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":25,"NId_perfil":144,"NNum_rut":1,"SGls_nombre":"Administrador ","SCod_cuenta":"nubix","SCod_password":"admin","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"","SGls_apellido_materno":"","SDv_rut":"9"},{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":26,"NId_perfil":146,"NNum_rut":5777261,"SGls_nombre":"Franco","SCod_cuenta":"fnieri","SCod_password":"fnieri","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"Nieri","SGls_apellido_materno":"","SDv_rut":"1"},{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":27,"NId_perfil":1122,"NNum_rut":17248311,"SGls_nombre":"Camila Fernanda Valentina","SCod_cuenta":"cflores","SCod_password":"nene2302","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"Flores","SGls_apellido_materno":"Haub","SDv_rut":"9"},{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":28,"NId_perfil":1,"NNum_rut":1,"SGls_nombre":"nombreDermo","SCod_cuenta":"dermo","SCod_password":"dermo","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"ApellidoPat","SGls_apellido_materno":"ApellidoMat","SDv_rut":"9"},{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":29,"NId_perfil":1,"NNum_rut":1,"SGls_nombre":"dime","SCod_cuenta":"dimetu","SCod_password":"dimeyo","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"tu","SGls_apellido_materno":"yo","SDv_rut":"9"},{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":30,"NId_perfil":2,"NNum_rut":1,"SGls_nombre":"no","SCod_cuenta":"dimeyo","SCod_password":"dimetu","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"mb","SGls_apellido_materno":"re","SDv_rut":"9"}]</string
Me gustaría recorrer el arreglo, pero no sé cómo ya que soy algo nuevo en JSon.

Cómo puedo separar cáda objeto usuario en eclipse?
Gracias
  #2 (permalink)  
Antiguo 01/07/2014, 12:13
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años, 1 mes
Puntos: 292
Respuesta: Consulta JSon soy nuevo en esto

Hola,

Es un objeto literal lo que esta dentro del JSON ... lo recorres con for (), te mostrare como recorrer el objeto externo... porque luego hay 15 objetos dentro con sus atributos:

Código Javascript:
Ver original
  1. <script>
  2.  
  3. var obj = JSON.parse('[{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":4,"NId_perfil":1155,"NNum_rut":10584082,"SGls_nombre":"Juan","SCod_cuenta":"jancan","SCod_password":"12345","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"Ancan","SGls_apellido_materno":"","SDv_rut":"9"},{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":13,"NId_perfil":1155,"NNum_rut":10584080,"SGls_nombre":"Marco","SCod_cuenta":"msuazo","SCod_password":"msuazo","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"Suazo","SGls_apellido_materno":"","SDv_rut":"2"},{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":15,"NId_perfil":1122,"NNum_rut":10584082,"SGls_nombre":"Administrador","SCod_cuenta":"gallendes","SCod_password":"joi7jiuml","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"","SGls_apellido_materno":"tratos","SDv_rut":"9"},{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":16,"NId_perfil":1155,"NNum_rut":11072809,"SGls_nombre":"Juan","SCod_cuenta":"jchavez","SCod_password":"claudia","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"Chavez","SGls_apellido_materno":"","SDv_rut":"3"},{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":17,"NId_perfil":1155,"NNum_rut":11994419,"SGls_nombre":"German","SCod_cuenta":"gcabrera","SCod_password":"210372","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"Cabrera","SGls_apellido_materno":"","SDv_rut":"8"},{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":20,"NId_perfil":145,"NNum_rut":17203522,"SGls_nombre":"Jose Francisco","SCod_cuenta":"jfhurtado","SCod_password":"123","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"Hurtado","SGls_apellido_materno":"Ruiz-Tagle","SDv_rut":"1"},{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":21,"NId_perfil":1122,"NNum_rut":10584082,"SGls_nombre":"Roberto","SCod_cuenta":"tratos","SCod_password":"tratos","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"Puga","SGls_apellido_materno":"Y.","SDv_rut":"9"},{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":22,"NId_perfil":1155,"NNum_rut":18084387,"SGls_nombre":"Nazareno","SCod_cuenta":"nfigueroa","SCod_password":"supervisor","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"Figueroa","SGls_apellido_materno":"","SDv_rut":"6"},{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":23,"NId_perfil":1155,"NNum_rut":10584082,"SGls_nombre":"Jose Luis","SCod_cuenta":"jlramirez","SCod_password":"jose","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"Ramirez","SGls_apellido_materno":"","SDv_rut":"9"},{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":24,"NId_perfil":1155,"NNum_rut":10584082,"SGls_nombre":"Manuel","SCod_cuenta":"mcorrea","SCod_password":"manuel","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"Correa","SGls_apellido_materno":"","SDv_rut":"9"},{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":25,"NId_perfil":144,"NNum_rut":1,"SGls_nombre":"Administrador ","SCod_cuenta":"nubix","SCod_password":"admin","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"","SGls_apellido_materno":"","SDv_rut":"9"},{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":26,"NId_perfil":146,"NNum_rut":5777261,"SGls_nombre":"Franco","SCod_cuenta":"fnieri","SCod_password":"fnieri","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"Nieri","SGls_apellido_materno":"","SDv_rut":"1"},{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":27,"NId_perfil":1122,"NNum_rut":17248311,"SGls_nombre":"Camila Fernanda Valentina","SCod_cuenta":"cflores","SCod_password":"nene2302","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"Flores","SGls_apellido_materno":"Haub","SDv_rut":"9"},{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":28,"NId_perfil":1,"NNum_rut":1,"SGls_nombre":"nombreDermo","SCod_cuenta":"dermo","SCod_password":"dermo","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"ApellidoPat","SGls_apellido_materno":"ApellidoMat","SDv_rut":"9"},{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":29,"NId_perfil":1,"NNum_rut":1,"SGls_nombre":"dime","SCod_cuenta":"dimetu","SCod_password":"dimeyo","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"tu","SGls_apellido_materno":"yo","SDv_rut":"9"},{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":30,"NId_perfil":2,"NNum_rut":1,"SGls_nombre":"no","SCod_cuenta":"dimeyo","SCod_password":"dimetu","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"mb","SGls_apellido_materno":"re","SDv_rut":"9"}]');
  4.  
  5. for (o in obj)
  6. {
  7.     console.log(obj[o]);
  8. }
  9.  
  10. </script>

El scroll no deja ver el codigo...... tu json es como largo


Aqui como recorrer los objetos internos y mostrar sus atributos:

Código Javascript:
Ver original
  1. for (o in obj)
  2. {
  3.     // objeto interno
  4.     obj_in = obj[o];
  5.    
  6.     for (p in obj_in){
  7.         console.log(obj_in[p]);
  8.     }
  9. }
__________________
Salu2!
  #3 (permalink)  
Antiguo 02/07/2014, 08:36
Avatar de Panshop  
Fecha de Ingreso: abril-2009
Ubicación: Santiago
Mensajes: 87
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: Consulta JSon soy nuevo en esto

:P
gracias, a las finales pude resolverlo de la siguiente manera:

Código:
//simulando respuesta desde el webservice con 2 usuarios (copie uno y pegue el mismo ya que como dices, salio muy largo en una línea.... 
String respWSDL = [{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":4,"NId_perfil":1155,"NNum_rut":10584082,"SGls_nombre":"Juan","SCod_cuenta":"jancan","SCod_password":"12345","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"Ancan","SGls_apellido_materno":"","SDv_rut":"9"},
{"O_COD":1,"O_MENSAJE":"Cargado","NId_usuario":4,"NId_perfil":1155,"NNum_rut":10584082,"SGls_nombre":"Juan","SCod_cuenta":"jancan","SCod_password":"12345","SFoto":"","SFotoOri":"","SGls_apellido_paterno":"Ancan","SGls_apellido_materno":"","SDv_rut":"9"}]

JSONObject respJson;
JSONArray arrayJSon = new JSONArray(respWSDL);
for(int a = 0; a < arrayJSon.length(); a++){
	respJson = arrayJSon.getJSONObject(a);
	Log.w("Cuenta", respJson.getString("SCod_cuenta"));
}
Esto me funciona igual, será un buen camino o me guío por como me lo explicaste tu?
  #4 (permalink)  
Antiguo 02/07/2014, 08:55
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años, 1 mes
Puntos: 292
Respuesta: Consulta JSon soy nuevo en esto

Lo que entiendo es haces eso para crear un iterator y asi poder recorrer con for() en JSON en vez de convertirlo en un objeto...

Cita:
JSONObject respJson;
JSONArray arrayJSon = new JSONArray(respWSDL); // JsonIterator
Creeria que para JSON pesados y en cantidad la solucion que expones tiene que ser mas eficiente
__________________
Salu2!

Última edición por Italico76; 02/07/2014 a las 09:11

Etiquetas: js, json
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:12.