q tal:
Les traigo una interesante y potente manera de comunicar nuestros midlets con scripts php alojados en algun servidor Web mediante un formato de representacion de datos mas ligero que XML y muy acpetado por los programadores.
JSON?::
"Javascript Object Notation" es un formato ligero de intercambio de datos, similar a XML, pero basado en JS. La simplicidad de este lo ha llevado a ser una alternativa a XML en el uso de AJAX, ya que es mucho mas sencillo escribir un parser de JSON en Javascript.
Les traigo una interesante y potente manera de comunicar nuestros midlets con scripts php alojados en algun servidor Web mediante un formato de representacion de datos mas ligero que XML y muy acpetado por los programadores.
JSON?::
"Javascript Object Notation" es un formato ligero de intercambio de datos, similar a XML, pero basado en JS. La simplicidad de este lo ha llevado a ser una alternativa a XML en el uso de AJAX, ya que es mucho mas sencillo escribir un parser de JSON en Javascript.
http://www.json.org/
El autor cuidadosamente ha elaborado librerias para soportar y usar JSON en muchos lenguajes de programación.. De las cuales usaremos la perteneciente a PHP y a J2ME.
Un ejemplo básico que e elaborado es el siguiente:
script PHP del lado del servidor:
JAVA :
Del lado del cliente: Leeremos JSON desde J2ME utilizando la libreria JSON j2me.
//cadena de conexión:
String url = "http://servidor/pagina1.php?pais=Peru"
........
//decodificamos la respuesta del servidor...
try{
JSONArray jsonArray=new JSONArray(respuesta);
respuesta="Las Provincias obtenidas son:\n\t";
for(int i=0;i < jsonArray.length();i++){
respuesta+=jsonArray.getString(i);
respuesta+="\n\t";
}
}catch(JSONException exe){;}
Un ejemplo básico que e elaborado es el siguiente:
script PHP del lado del servidor:
require_once("JSON.php");
$oJSON = new JSON();
//Definimos un array de objetos en notacion JSON.
//El objeto consta en el atributo nombre y un array de provincias.
$sJSON= "[{\"nombre\":\"Peru\",\"provincias\":[\"Lima\",\"Piura\",\"Lambayeque\",
\"Cajamarca\",\"Ucayali\",\"Cuzco\",\"Puno\",\"Tacna\"]},{\"nombre\":\"Espana\",
\"provincias\":[\"Saragoza\",\"Sevilla\",\"Barcelona\",\"Madrid\",\"Valencia\",
\"Villareal\",\"Cataluna\"]},{\"nombre\":\"Argentina\",\"provincias\":[\"la Plata\"
,\"Cordova\",\"Buenos Aires\",\"San Lorenzo\"]}]";
$oUbicacion = $oJSON->decode($sJSON);
$sSalida="[]";
$pais=$_REQUEST['pais'];//recibimos en la cadena de petición el país escogido.
if(!empty($pais)){//si existe
for($i=0;$inombre==$pais){
//obtenemos las provincias del aís escogido
$sSalida = $oJSON->encode($oUbicacion[$i]->provincias);
break;
}
}
echo $sSalida ;
$oJSON = new JSON();
//Definimos un array de objetos en notacion JSON.
//El objeto consta en el atributo nombre y un array de provincias.
$sJSON= "[{\"nombre\":\"Peru\",\"provincias\":[\"Lima\",\"Piura\",\"Lambayeque\",
\"Cajamarca\",\"Ucayali\",\"Cuzco\",\"Puno\",\"Tacna\"]},{\"nombre\":\"Espana\",
\"provincias\":[\"Saragoza\",\"Sevilla\",\"Barcelona\",\"Madrid\",\"Valencia\",
\"Villareal\",\"Cataluna\"]},{\"nombre\":\"Argentina\",\"provincias\":[\"la Plata\"
,\"Cordova\",\"Buenos Aires\",\"San Lorenzo\"]}]";
$oUbicacion = $oJSON->decode($sJSON);
$sSalida="[]";
$pais=$_REQUEST['pais'];//recibimos en la cadena de petición el país escogido.
if(!empty($pais)){//si existe
for($i=0;$i
//obtenemos las provincias del aís escogido
break;
}
}
echo $sSalida ;
JAVA :
Del lado del cliente: Leeremos JSON desde J2ME utilizando la libreria JSON j2me.
//cadena de conexión:
String url = "http://servidor/pagina1.php?pais=Peru"
........
//decodificamos la respuesta del servidor...
try{
JSONArray jsonArray=new JSONArray(respuesta);
respuesta="Las Provincias obtenidas son:\n\t";
for(int i=0;i < jsonArray.length();i++){
respuesta+=jsonArray.getString(i);
respuesta+="\n\t";
}
}catch(JSONException exe){;}
No hay comentarios:
Publicar un comentario