Hola Jorge! La librería angular.js (alojada en el webresource new_angular.js) es …

Comment on Request directa a WEB API de CRM Online mediante Azure AD by Daniel Diaz Granizo.

Hola Jorge!

La librería angular.js (alojada en el webresource new_angular.js) es la que utilicé para el ejemplo concreto, pero no es más que una utilidad para poder hacer peticiones REST más fácilmente. De hecho angular.js es una librería un poco antigua que yo recomendaría no utilizar ya. Existen otras muchas librerías que te podrían ayudar, de hecho también puedes hacerlo sin utilizar ninguna. Lo importante es saber la URL donde ejecutas el mensaje, el verbo (get, put, post, patch, delete, etc), y el body del mensaje. Todo esto está indicado en el post de modo que espero te pueda ayudar.

Un saludo!

Recent Comments by Daniel Diaz Granizo

Peticiones SOAP con AngularJS en CRM Dynamics
Hola Olalla!! La verdad que sí que es muy útil. Me alegro mucho de que te haya servido!


Paneles de USD: dónde se encuentran y cómo saber los que hay
Hola Fernando

Sí que se puede. En la configuración de tu USD puedes añadir un hosted control de tipo «Panel Layout» donde puedes especificar el esquema XAML que quieres que se aplique. Si tienes acceso al XAML default de USD puedes copiarlo, modificarlo como prefieras y pegarlo en este hosted control.

Saludos


Variable window.IsUSD = true que introduce USD sobre el header
Hola Javi
Desconocía este comportamiento pero ahora que lo comentas tiene sentido. Puedes también hacer la prueba de cargar los hosted controls en orden, uno detrás del otro. Puedes poner en el Sort Order (un campo del hosted control) para el panel un order bajo (por ejemplo 5) y para el hosted control de la aplicación uno más salto (tipo 300). Esto produce que se cargue primero uno y después el otro lo que en principio te garantiza que estará el panel cuando cargue la aplicación


Variable window.IsUSD = true que introduce USD sobre el header
Hola Javi. Cuando incrustas una aplicación externa en USD intervienen muchas variables como el tipo de aplicación, el comportamiento de la aplicación, y también la configuración del hosted control (que a su vez depende enormemente de la versión de soluciones que hayas importado en CRM). Con la información que me das no puedo ayudarte pero tenía pensado escribir un post sobre ese tema en las próximas semanas. Espero que te ayude.


4 Responses

  1. Jorge Alberto 1 octubre, 2019 / 16:56

    Muchas Gracias por la explicación.
    Voy a probarlo.
    Una consulta: no he tocado el tema de angular aún.
    El archivo que pesa mas (new_angular.js) ¿también está involucrado en los archivos a usar?

    View Comment
    • Daniel Diaz Granizo 1 octubre, 2019 / 18:44

      Hola Jorge!

      La librería angular.js (alojada en el webresource new_angular.js) es la que utilicé para el ejemplo concreto, pero no es más que una utilidad para poder hacer peticiones REST más fácilmente. De hecho angular.js es una librería un poco antigua que yo recomendaría no utilizar ya. Existen otras muchas librerías que te podrían ayudar, de hecho también puedes hacerlo sin utilizar ninguna. Lo importante es saber la URL donde ejecutas el mensaje, el verbo (get, put, post, patch, delete, etc), y el body del mensaje. Todo esto está indicado en el post de modo que espero te pueda ayudar.

      Un saludo!

      View Comment
  2. Jorge Alberto 1 octubre, 2019 / 19:25

    Buenas. Gracias por responder.
    Una consulta, seguí tus pasos para realizar el token antes de enviar.
    Pero en la parte de
    /*
    URL: https://login.windows.net/d627e6dd-343b-4323-8d8d-b9381c722c7a/oauth2/token
    Method: post
    Headers: { «Content-Type»: «application/x-www-form-urlencoded»}
    Datos: {la tabla de mas arriba concatenada del tipo «key1=value1&key2=value2&etc»}.
    */
    Intente enviar con POSTMANT pero me surge el siguiente error

    /****************
    {
    «error»: «invalid_request»,
    «error_description»: «AADSTS900144: The request body must contain the following parameter: ‘grant_type’.\r\nTrace ID: 36cd4505-3829-43f7-afa3-366246eb1d00\r\nCorrelation ID: 59c35120-2d9e-4bbb-8a38-c77a71881d20\r\nTimestamp: 2019-10-01 18:16:42Z»,
    «error_codes»: [
    900144
    ],
    «timestamp»: «2019-10-01 18:16:42Z»,
    «trace_id»: «36cd4505-3829-43f7-afa3-366246eb1d00»,
    «correlation_id»: «59c35120-2d9e-4bbb-8a38-c77a71881d20»,
    «error_uri»: «https://login.microsoftonline.com/error?code=900144»
    }
    ****************/

    Yo escribi las cabecera
    /******
    Content type : aplication/json
    ******/
    Y el cuerpo
    /*******************
    {
    «client_id»:»b71d4f48-504f-4dc4-b3ae-a0ed66ba9b38″,
    «resource»:»https://******.crm2.dynamics.com/»,
    «username»:»jorge****************»,
    «password»:»*************»,
    «grant_type»:»password»,
    «client_secret»:»CV*************************»
    }
    ********************/
    Tendrás una idea del porque me sale este error?

    Soy nuevo en el tema de API

    Gracias

    View Comment
  3. Jorge Alberto 1 octubre, 2019 / 21:12

    Buenas una consulta.
    Quisiera probar el obtener el token de autorización

    /******************************************************************************************
    URL: https://login.windows.net/d627e6dd-343b-4323-8d8d-b9381c722c7a/oauth2/token
    Method: post
    Headers: { «Content-Type»: «application/x-www-form-urlencoded»}
    Datos: {la tabla de mas arriba concatenada del tipo «key1=value1&key2=value2&etc»}.
    *******************************************************************************************/

    Pero quisiera probarlo primero en POSTMAN

    Una idea de como hacerlo. A mi me sale Error. Gracias

    View Comment

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *