Cómo generar auth_code y token_code

Cómo generar auth_code y token_code

En este artículo, puede ver cómo generar auth_code y token_code, necesarios para usar las macros sc_api_upload y sc_api_download.
Estas claves deben generarse individualmente, siga los pasos a continuación para generarlas sin error.

Para usar las macros de carga y descarga con Google Drive, debe habilitar la API de Google Drive en tu cuenta de Google.

Genere auth_code con la macro sc_api_gc_get_url

La macro sc_api_gc_get_url genera una URL para la autenticación del usuario de la cuenta de Google que se utiliza para la configuración de la API.
Tiene dos parámetros:
  1. app_name - Recibe el nombre de la aplicación, disponible en su configuración de api. Este parámetro acepta cadenas o variables.
  2. json_oauth - Recibe el contenido del archivo json, este archivo está disponible para descargar en la configuración de su api. Este parámetro acepta cadenas o variables.
Siga los pasos a continuación.

1. Cree una aplicación tipo blan en su proyecto, con el objetivo de obtener la auth_code.



2. En el evento onExecute, agregue el siguiente código.
Los valores asignados a las variables $app_name y $json_oauth, en el siguiente ejemplo, son solo para ilustración y deben ser modificados por los datos de su cuenta.


Código de ejemplo

  1. // $app_name debería recibir el nombre de la aplicación configurado en su cuenta de Google
  2. $app_name  = 'scriptcase';
  3. // $json_oauth debe recibir el contenido del archivo json disponible para descargar en la configuración de su aplicación de Google.
  4. $json_oauth  = '{"installed":{"client_id":"238650139811-eqrje3lqhj9a404iuduh9l5kvk5i13ng.apps.googleusercontent.com","project_id":"sample-294791","auth_uri":"https://accounts.google.com/o/oauth2/auth","token_uri":"https://oauth2.googleapis.com/token","auth_provider_x519_cert_url":"https://www.googleapis.com/oauth2/v1/certs","client_secret":"E-Z_t8PU-8u0BFwumHRorbTl","redirect_uris":["urn:ietf:wg:oauth:2.0:oob","http://localhost"]}}';

  5. // Genera el enlace de autenticación de la cuenta
  6. $url = sc_api_gc_get_url($app_name$json_oauth);
  7. //Redirige la aplicación al enlace generado por la macro.
  8. sc_redir($url);

Autenticación de Google

3. Luego ejecute la aplicación.
Se le pedirá que inicie sesión con la cuenta utilizada para configurar la API.



4. Entonces se generará el código.
Almacene el código en un archivo de texto, será necesario que generemos el código del token.



Posibles errores

Este error ocurre cuando el valor informado en el parámetro json_oauth es incorrecto.
Abra el archivo json nuevamente, copie todo el contenido del archivo, debe ser informado en su totalidad.




Genere token_code con la macro sc_api_gc_get_obj

La macro sc_api_gc_get_obj genera el token_code.
Tiene cuatro parámetros:
  1. app_name - Recibe el nombre de la aplicación, disponible en su configuración de api. Este parámetro acepta cadenas o variables.
  2. json_oauth - Recibe el contenido del archivo json, este archivo está disponible para descargar en la configuración de su API. Este parámetro acepta cadenas o variables.
  3. auth_code - Recibe el código de autenticación generado en el paso anterior u otro código de autenticación válido que ya ha generado.
Siga los pasos a continuación.
Este tutorial solo debe realizarse para cada código de autenticación generado. Si ocurre algún problema al generar el token_code, será necesario generar un nuevo auth_code.

En la misma aplicación blank, creada para generar el auth_code, también es posible generar el token_code, para ello siga los pasos a continuación.

5. Comente las líneas resaltadas a continuación:



Ejemplo de código con las líneas que deben comentarse.
  1. // $app_name should receive the app name configured in your google account
  2. $app_name  = 'scriptcase';
  3. // $json_oauth should receive the contents of the json file available for download in your google app's settings.
  4. $json_oauth  = '{"installed":{"client_id":"238650139811-eqrje3lqhj9a404iuduh9l5kvk5i13ng.apps.googleusercontent.com","project_id":"sample-294791","auth_uri":"https://accounts.google.com/o/oauth2/auth","token_uri":"https://oauth2.googleapis.com/token","auth_provider_x519_cert_url":"https://www.googleapis.com/oauth2/v1/certs","client_secret":"E-Z_t8PU-8u0BFwumHRorbTl","redirect_uris":["urn:ietf:wg:oauth:2.0:oob","http://localhost"]}}';

  5. // Generates the account authentication link
  6. // $url = sc_api_gc_get_url($app_name, $json_oauth);
  7. // Redirects the app to the link generated by the macro
  8. // sc_redir($url);

6. Después de la línea sc_redir, que debe comentarse, agregue las líneas a continuación.


Código de Ejemplo

  1. // Receives auth_code generated in the previous step
  2. $auth_code = '4/1AY0e-g4BjstStsxAJd7A5jjlzBifl5AWSS9x04xhwp6Cyh2JON0i3r2oNd4';

  3. $auth_token = sc_api_gc_get_obj($app_name$json_oauth$auth_code);
  4. echo $auth_token;
El código debería verse así en este momento.



7. Luego ejecute la aplicación. El valor de token_code debe mostrarse en la pantalla. Almacene el token en un archivo .txt.
Ejemplo de token_code generado:
  1. {"access_token":"ya29.a1AfH6SMBSExys1mg0_4aaZ1H8iVNUtZ-2iid4zIjvywOpPDpL5_fhpuYu_Evgqj14Zll1mu0DKeX-UPBBbkIY33T_hIwUKNi6h5GVmE8RSt7vwj1N8rmM_ae3EjOBMDIaS_F2vkZ8ZzpnBA0V38WwYBxBNR1C","expires_in":3599,"refresh_token":"1\/\/0heh4c5k0p_OqCgYIARAAGBESNwF-L2IrTOLtSoBOr-qdK4gDtSkyXtLYh99S1DGG6Y0x6sBwNu2sVnlqEFczG7-zEIBvCd8Bb6Q","scope":"https:\/\/www.googleapis.com\/auth\/drive","token_type":"Bearer","created":1623154166}

La macro sc_api_gc_get_obj debe ejecutarse solo una vez por cada auth_code generado. Después de obtener el token_code, el parámetro auth_token debe cambiarse para que se obtenga un nuevo token_code. De lo contrario, se mostrará Fatal error: Uncaught InvalidArgumentException: Invalid token format, que se describe a continuación, se mostrará al ejecutar la aplicación.

Posibles errores al generar token_code.

Fatal error: Uncaught InvalidArgumentException: Invalid token format

Este error ocurre cuando la macro sc_api_gc_get_obj se ejecuta por segunda vez sin que se hayan cambiado los valores de auth_code. En este caso, será necesario generar un nuevo auth_code, para obtener uno nuevo como se ve al principio del artículo. Volver al paso Generar auth_code con la macro sc_api_gc_get_url




    • Related Articles

    • Vea cómo generar credenciales recaptcha

      ReCAPTCHA es una herramienta utilizada a través de la API proporcionada por Google para enviar formas que agregan seguridad al momento de la confirmación del formulario (Previniendo la automatización para el envío). muestra reCAPTCHA: Primero tenemos ...
    • Cómo solicitar un nuevo serial de Scriptcase

      Algunas situaciones requieren la reinstalación de Scriptcase, en estos casos, el usuario debe generar un nuevo serial en nuestro sitio web para registrar la herramienta.   Siga los siguientes pasos para generar una nueva serie:   1. Iniciar sesión en ...
    • Cómo agregar temas a un proyecto existente

      En el proceso de creación del proyecto, debemos seleccionar los temas que formarán parte del proyecto. Si desea agregar nuevos temas a proyectos creados anteriormente, siga el paso a paso a continuación. Añadiendo nuevos temas al proyecto 1 - Para ...
    • Cómo realizar una publicación en ScriptCase - Avanzada

      Este tutorial muestra cómo realizar una publicación avanzada en ScriptCase. El ScriptCase tiene dos modelos de aplicaciones de publicación: Típico y Avanzado. Si tiene alguna duda acerca de lo que mejor se adapte a sus necesidades de publicación, ...
    • Cómo realizar una publicación en Scriptcase- Típica

      Este tutorial muestra cómo realizar una publicación típica en ScriptCase. El ScriptCase tiene dos modelos de publicación de aplicaciones:  típicos y Avanzado. Si tiene alguna pregunta sobre qué publicación se adecúa mejor a sus necesidades, lea el ...