Creando contenido con Rest Services

June 18, 2021

Debido al auge que tiene Internet en estos tiempos y a la facilidad de poder acceder a este servicio, una de las necesidades más grandes de los empresarios es el poder sincronizar la información de una manera más rápida y sencilla, ya sea para poder mostrarla a sus clientes (a través de una página web o aplicación móvil) o para tomas de decisiones en tiempo real.

Es aquí donde Drupal nos ofrece el módulo Services, el cual brinda la posibilidad de crear nuevos contenidos (nodos), hay que tener en cuenta el tipo de campo de los elementos que la conforman (por ejemplo: campo tipo texto, fecha, referencia a taxonomías, entre otros) A continuación veremos los diferentes parámetros que se deben usar para poder agregar nuevos contenidos.

- Módulo a usar: Services versión 7.x-3.3

Una vez instalado procedemos a activarlo, junto con REST Server,el cual se encuentra incluido en el módulo Services.

  1. Creación del servicio: Accedemos a nuestro sitio http://drupal_site/admin/structure/services y procedemos a agregar un nuevo servicio, los datos a usar para esta prueba son:

    • Machine-readable name of the endpoint: test_services.
    • Server: REST.
    • Path to endpoint: endpoint_services.
    • Seleccionamos la opción Session Authentication.
    • Guardamos.

    Add Services

  2. Configuración:

    a) Pestaña de servicios:

    • Formatos: json.
    • Analizador de peticiones: application/json, application/x-www-form-urlencoded.

    b) Pestaña de recursos:

    • Nodos.
    • Usuarios.

Para las siguientes pruebas, usaremos la extensión Postman en Chrome

  1. Login:

    Login

  2. Creación de contenidos:

Para tener en cuenta:

  1. Al momento de introducir los valores en los campos, hay que tener en cuenta el tipo de campo, ya que de eso dependerán los parámetros:

    • Campo texto: node[body][es][0][value]=$text
    • Campo fecha: node[campo_fecha][es][0][value][date]= $date
    • Campo referencia a entidad: node[campo_referencia][es] = $target_id
    • Campo referencia a taxomía: node[campo_referencia][es] = $tid
    • Campo archivo: node[field_inspection_image][es][0][fid] = $fid
  2. En el caso de querer subir más valores del mismo campo, se hace aumentado uno de los parámetros, ejemplo:

    • node[body][es][0][value]=$first_text
    • node[body][es][1][value]=$second_text
    • node[body][es][2][value]=$third_text

Conclusión

El papel que juega el módulo Services en estos tiempos es de gran importancia, en especial para aquellos que buscan automatizar los procesos (relacionados a la creación de contenidos), los cuales posiblemente se realicen de manera manual, ahorrando así en horas-trabajo.

Quick Access

Yes, I liked thiscontent.