ErrorDeMapaReferenteNoPermitido de la API de JavaScript de Google Maps
Estamos intentando desarrollar una aplicación de geolocalización para uno de nuestros clientes, y primero queremos probarla en nuestro propio dominio.
Hemos firmado para la API de JavaScript de Google Maps, y tenemos una clave de navegador válida y nuestro dominio, www.grupocamaleon.com, ha sido autorizado para usar esa clave.
Pero no podemos hacer que ni siquiera el ejemplo más fácil se ejecute sin error.
Tenemos, en nuestro dominio y con nuestra clave, la siguiente demostración:
(1) http://www.grupocamaleon.com/boceto/aerial-simple.html
Pero no funciona, y la consola de Firebug dice:
"Error de la API de Google Maps: Error de la API de Google Maps: RefererNotAllowedMapError (enlace a la documentación de Google sobre RefererNotAllowedMapError) URL de su sitio para autorizar: (1)"
Mi página de credenciales no tiene la posibilidad de agregar referentes para aceptar, así que las soluciones que implican agregar referentes no son posibles en este momento.
Mi página de credenciales:
¿Por qué obtenemos ese error? ¿Cómo podemos solucionarlo?
Respuesta #1
Sé que esta es una pregunta antigua que ya tiene varias respuestas, pero yo tenía el mismo problema y para mí el problema fue que seguí el ejemplo proporcionado en console.developers.google.com y puse mis dominios en el formato *.domain.tld/*. Esto no funcionó en absoluto, y traté de agregar todo tipo de variaciones a esto como domain.tld, domain.tld/*, *.domain.tld, etc.
Lo que lo solucionó para mí fue añadir también el protocolo real; http://domain.tld/* es el único que necesito para que funcione en mi sitio. Supongo que tendré que añadir https://domain.tld/* si decidiera cambiar a HTTPS.
Actualización: Google finalmente ha actualizado el marcador de posición para incluir http ahora:
Respuesta #2
Vamos Google, ustedes son más inteligentes de lo que la página de Credenciales de API sugiere. (Lo sé porque tengo dos hijos trabajando allí.)
La lista de "referidores" es mucho más exigente de lo que parece. (Por supuesto, debería ser más indulgente.) Aquí hay algunas reglas que me tomaron horas descubrir:
- El orden en la lista es importante. Mover tu URL hacia arriba en la lista puede hacer que funcione.
- Se requiere el prefijo "http://".
- Incluso "localhost" lo necesita: "http://localhost/foo/bar.html"
- Un *
finalcomo comodín parece funcionar como si fuera una comparación de cadenas. - Incluso con "http://localhost/foo/bar.html", "http://localhost/foo/bar.html?arg=1" no funcionará. (¿Ayudaría un comodín?)
- Para ambos, desarrollo y producción, tener (al menos) dos filas: "http://localhost/foo/bar.html" y "http://my.site.com/foo/bar.html"
- No parece ser necesario un número de puerto (¿8085? ¿4000?).
Probablemente haya otras reglas, pero esto es un juego de adivinanzas tedioso.
Respuesta #3
Los comodines (asteriscos) NO ESTÁN permitidos en la parte del subdominio.
- INCORRECTO: *.example.com/*
- DERECHO: example.com/*
Olvida lo que Google dice en el marcador de posición, no está permitido.
Respuesta #4
Solo recuerda que si solo lo cambias, puede tardar hasta 5 minutos en que los ajustes surtan efecto.
Respuesta #5
Según la documentación, 'RefererNotAllowedMapError' significa
La URL actual que está cargando la API de JavaScript de Google Maps no ha sido añadida a la lista de remitentes permitidos. Por favor, revise la configuración de remitentes de su clave API en la Consola de Desarrolladores de Google.
Tengo configurada la API de Google Maps Embed para mi uso personal/laboral y hasta ahora no he especificado ningún referente HTTP. No registro errores. Tus configuraciones deben estar haciendo que Google piense que la URL que estás visitando no está registrada o permitida.
Respuesta #6
Probé muchas variaciones de remitente y también esperar 5 minutos hasta que me di cuenta de que el ejemplo que Google muestra en el campo del formulario está defectuoso. Ellos muestran:
*.example.com/*
Sin embargo, eso solo funciona si tienes subdomain. o www. delante de tu nombre de dominio. Lo siguiente funcionó para mí de inmediato (omití el punto inicial del ejemplo de Google):
*example.com/*
Respuesta #7
Según los documentos de Google, esto ocurrió porque la url en la que estás usando la API de Google Maps, no está registrada en la lista de remitentes permitidos
EDITAR :
De Google Docs
Todos los subdominios de un dominio especificado también están autorizados.
Si http://example.com está autorizado, entonces http://www.example.com también está autorizado. Lo contrario no es cierto: si http://www.example.com está autorizado, http://example.com no necesariamente está autorizado.
Entonces, por favor configure el dominio http://testdomain.com, luego su http://www.testdomain.com empezará a funcionar.
Respuesta #8
Verifica que también tengas las APIS correctas habilitadas.
Intenté todo lo anterior, asteriscos, dominios tlds, barras diagonales, barras invertidas y todo, incluso al final solo ingresando una URL como último recurso.
Todo esto no funcionó y finalmente me di cuenta de que Google también requiere que ahora especifiques qué API quieres usar (ver captura de pantalla)
No tenía habilitadas las que necesitaba (para mí eso era la API de JavaScript de Maps)
Una vez que lo activé, todo funcionó bien usando:
http://www.example.com/*
¡Espero que eso ayude a alguien! :)



