Estoy tratando de hacer un flujo de trabajo OAuth2 definido por Lightspeed POS en el siguiente enlace: https://developers.lightspeedhq.com/resto-api/introduction/authentication/
Esencialmente es así: paso 1: envíe una solicitud Get a https://test.lightspeedapis.com/resto/oauth2/v1/authorize?response_type=code&client_id=CLIENT_ID&state=authenticated&redirect_uri=https://localhost
paso 2: después de ingresar las credenciales del cuadro en el navegador y luego hacer clic en el botón "Permitir", redirija al redirect_uri especificado con state=authenticated&code=AUTHORIZATION_CODE
paso 3: ahora con el CÓDIGO DE AUTORIZACIÓN en la URL de redireccionamiento del paso 2, obtener el token de acceso se puede realizar mediante programación, enviando una solicitud POST al punto final del token de velocidad ligera con el CÓDIGO DE AUTORIZACIÓN, ID_cliente, secreto_cliente en el cuerpo y luego analizando la respuesta json devuelta.
Tengo una aplicación de cliente que estoy integrando con lightspeed y quieren activar la ventana emergente o iframe desde su sitio web, digamos: www.mysystem.com .
No puedo encontrar una manera de obtener programáticamente ese código de la respuesta. Puedo llamar a esta página como una ventana emergente o iframe muy bien, pero no puedo obtener ese código de la respuesta programáticamente.
El problema es que al intentar incrustar la página de inicio de sesión de Lightspeed dentro de un iframe, da un error de política de origen cruzado. Al intentar incrustar la página de autorización dentro de un iframe en la aplicación web, da un error relacionado con la Política de seguridad de contenido del sitio web del host. Al intentar abrir una ventana emergente con la página de inicio de sesión, aparecerá la página y el usuario podrá iniciar sesión sin contratiempos. Sin embargo, es imposible que la aplicación web consulte la URL de dicha ventana emergente, lo que genera un error que indica que bloqueó el acceso del sitio a un marco de origen cruzado.