Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

150
Vistas
Angular - Texto mecanografiado - Cómo cerrar la ventana abierta desde la aplicación durante la solicitud de google oauth2

Estoy trabajando en el código de solicitud de google oauth2. Necesito hacer clic en la aplicación de un botón y abrir una nueva ventana para iniciar el flujo de google oauth2. Tengo un uri de redirección configurado como parámetro. Escribo esta función pero tengo este error en la función setInterval:

 Blocked a frame with origin from accessing a cross-origin frame

esta es la funcion:

 oauth2SignIn() { // Google's OAuth 2.0 endpoint for requesting an access token const oauth2Endpoint = 'https://accounts.google.com/o/oauth2/v2/auth'; // Create element to open OAuth 2.0 endpoint in new window. let form = document.createElement('form'); form.setAttribute('method', 'GET'); // Send as a GET request. form.setAttribute('target', 'previewWindow'); form.setAttribute('id', 'googleFormAuth'); form.setAttribute('action', oauth2Endpoint); // Parameters to pass to OAuth 2.0 endpoint. const params = { client_id: environment.GAPI_CLIENT_ID, redirect_uri: 'https://my-app/services/api/api/google/calendar/callback', scope: 'https://www.googleapis.com/auth/calendar.readonly', state: 'try_sample_request', response_type: 'code', access_type: 'offline', prompt: 'consent', }; // Add form parameters as hidden input values. for (let p in params) { let input = document.createElement('input'); input.setAttribute('type', 'hidden'); input.setAttribute('name', p); input.setAttribute('value', params[p]); form.appendChild(input); } // Add form to page and submit it to open the OAuth 2.0 endpoint. document.documentElement.appendChild(form); let newWin = window.open('', 'previewWindow', 'popup'); form.submit(); setInterval(()=> { if(newWin.location.href.includes('my-app') { newWin.close(); } }) }

Mi enfoque es cerrar newWin cuando la URL cambió. También tengo que leer el documento porque a veces tengo un error impreso en el dom, como un error 401 por parte del servidor. ¿Es posible solucionar este problema?

about 4 years ago · Santiago Trujillo
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda