google api - new - Google URL Shortener 403 Límite de velocidad excedido
new google shortener (4)
Debes ir a la extensión del acortador de google y, en la opción, seleccionar ''Otorgar acceso''.
Utilizando la API de acortador de google url, funcionaba bien hasta que comencé a probar con la carga. Rápidamente comencé a recuperar 403 Límite de tasa de errores excedidos de Google, a pesar de que me inscribí para usar la API y viene con 1,000,000 de visitas al día. Puedo ver las solicitudes que ingresan en la herramienta de informes de Google, y solo están enviando 403''s para todo. Los 403 comenzaron a regresar a alrededor de 345/350 visitas al API, y han continuado durante horas.
¿Pensamientos?
Haga clic derecho en el icono de Extensión, vaya a Opciones y haga clic en Otorgar acceso en la parte inferior.
La API limita las solicitudes a 1 solicitud / por segundo / por usuario.
Un usuario se define como una dirección IP única.
Entonces, si estuvieras haciendo tus pruebas de carga desde una única IP, esto habría causado tu problema de límite de velocidad.
https://developers.google.com/analytics/devguides/reporting/mcf/v3/limits-quotas#general_api
No creo "1 solicitud / por segundo / por usuario". como está escrito en el documento es 100% correcto en mi caso, o en el caso del acortador de google url. (Para su información: estoy usando el "acceso público API", no "OAuth")
Tengo casi el mismo problema pero, para mí, es más probable que sea "Recibo este error en algunas URL durante un período de tiempo". Qué significa eso? Por favor, continúa leyendo.
Esto es lo que encontré:
- Puedo usar 10 hilos para usar el acortador de URL de google al mismo tiempo, pero no siempre ...
- al procesar, incluso una url falla en un subproceso, los otros subprocesos aún pueden obtener los otros urls.
- cuando una URL falla, y luego volví a probar la misma url (incluso cuando no hay otros procesos en ejecución, todavía no funciona durante un PERÍODO DE TIEMPO. Incluso intenté agregar más cadenas como "& test = 1", no ayuda. Pero si cambié a otra url, funciona.
Entonces, supongo que el servidor de google puede tener memoria caché de cada url. Si una url falla, debe esperar un tiempo para liberar la caché.
Entonces, tengo que escribir un código espeluznante como este para resolver mi problema:
- cuando hay un error, ese hilo en particular dormirá durante 1 minuto (sí, 1 minuto)
- y sigue intentándolo por 10 veces (por lo que puede ser 10 minutos para una URL fallida)
Sin embargo, este código escalofriante está bien para mi caso porque estoy usando ExecutorService con un tamaño de grupo de subprocesos fijos de 10. Por lo tanto, si hay un error, los demás aún pueden obtener las URL acortadas. Resuelve el problema ... al menos para mí.