Foros del Web » Programando para Internet » Javascript »

Entendiendo el Script de Georedirección por IP

Estas en el tema de Entendiendo el Script de Georedirección por IP en el foro de Javascript en Foros del Web. Hola! Estoy montando un script en una página web para que me redirija a los usuarios según su país. Por internet encontré esta API que ...
  #1 (permalink)  
Antiguo 10/01/2015, 07:33
 
Fecha de Ingreso: enero-2015
Mensajes: 4
Antigüedad: 9 años, 3 meses
Puntos: 0
Entendiendo el Script de Georedirección por IP

Hola!

Estoy montando un script en una página web para que me redirija a los usuarios según su país. Por internet encontré esta API que hace exactamente eso:

http://www.telize.com/

La cuestión es que tengo problemas para entender el código (soy novato en Javascript)

El código que nos brinda la web es el siguente:

Código:
<script type="application/javascript">
	function getip(json){
	 	document.write("My IP address is : ", json.ip);
    }
</script>

<script type="application/javascript" src="http://www.telize.com/jsonip?callback=getip"></script>

Yo he programado el siguiente código:

Código:
<html>
<head>
</head>
<body>

<script type="application/javascript">
    function getgeoip(json){
    
    	var pais=json.country;
        if(pais=='Spain') {
            location.href = "http://google.es";
        }
        else {
           location.href = "http://bing.es";
        }
  
    }

</script>

<script type="application/javascript" src="http://www.telize.com/geoip?callback=getgeoip"></script>
</body>
</html>
Aquí me surgen algunas dudas:

1. El código que yo hice, tal como está, funciona. La cosa es que yo en el script solo definí la función, pero no la llamé en ningún punto. ¿Cómo es que se ejecuta la función?

2. Qué diferencia hay entre script type="application/javascript" y script type="text/javascript"

3. A la función se le entrega un json, pero cómo sabe la función de dónde tiene que tomarlo?

Espero que alguien me pueda aclarar un poco todo esto :)

Muchas gracias!!
  #2 (permalink)  
Antiguo 10/01/2015, 10:49
Colaborador
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 3.648
Antigüedad: 10 años, 7 meses
Puntos: 578
Respuesta: Entendiendo el Script de Georedirección por IP

El funcionamiento de json con padding es bastante sencillo.

En el momento de cargar el script, el usuario realiza una petición al servidor en el que está alojado dicho API, y éste le proporciona como respuesta otro código:

Código:
getip({"ip":"XXX.XXX.XXX.XXX"});
Ahí está pasando un objeto con su correspondiente IP por la función getip que habías declarado previamente en tu código, y que obtiene la propiedad "ip".

Cita:
Iniciado por alejandromrtnz378
Qué diferencia hay entre script type="application/javascript" y script type="text/javascript"
Son lo mismo. application/javascript es el estándar, pero en este caso se suele utilizar text/javascript por costumbre...
  #3 (permalink)  
Antiguo 10/01/2015, 10:57
 
Fecha de Ingreso: enero-2015
Mensajes: 4
Antigüedad: 9 años, 3 meses
Puntos: 0
Respuesta: Entendiendo el Script de Georedirección por IP

Cita:
Iniciado por PHPeros Ver Mensaje
El funcionamiento de json con padding es bastante sencillo.

En el momento de cargar el script, el usuario realiza una petición al servidor en el que está alojado dicho API, y éste le proporciona como respuesta otro código:

Código:
getip({"ip":"XXX.XXX.XXX.XXX"});
Ahí está pasando un objeto con su correspondiente IP por la función getip que habías declarado previamente en tu código, y que obtiene la propiedad "ip".



Son lo mismo. application/javascript es el estándar, pero en este caso se suele utilizar text/javascript por costumbre...
Gracias por tu respuesta, PHPeros!

Ahora solo me queda entender por qué se ejecuta la función, si yo solo la definí, pero no la llamé en ninguna parte.

Y otra cosa... ¿Crees que los scripts los debo definir en el <head> o están bien en el <body>?

Gracias!!
  #4 (permalink)  
Antiguo 10/01/2015, 12:13
Colaborador
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 3.648
Antigüedad: 10 años, 7 meses
Puntos: 578
Respuesta: Entendiendo el Script de Georedirección por IP

Por lo mismo que te he dicho antes. Si te fijas, en la URL del script hay un parámetro llamado "callback", cuyo valor es el nombre de la función que vas a usar como callback para poder manipular los datos obtenidos, sino, no funcionaría

Recuerda que JSONP es una alternativa a AJAX en diferentes dominios.

Última edición por PHPeros; 10/01/2015 a las 15:18

Etiquetas: funcion, html, ip, js
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 08:56.