Ejemplo probar CURL usando get en moodle con Ddev

Descripción

Este es un ejemplo práctico de cómo probar una llamada REST con Moodle, usando CURL, en un entorno Local utilizando Ddev.

Instrucciones

Requisitos Previos

  1. Tener DDEV instalado

  2. Un sitio Moodle instalado en DDEV

  3. Acceso como administrador en Moodle

  4. Conocimiento del servicio web que deseas probar (nombre del servicio, funciones, parámetros, etc.)

Paso 1: Crear un Servicio Web en Moodle

  1. Ingresa a tu sitio Moodle como administrador

  2. Ve a:
    Administración del sitio > Extensiones > Servicios web > Gestionar servicios

  • Crea un nuevo servicio web (si no tienes uno):

    • Clic en "Agregar"

    • Nómbralo y márcalo como "Habilitado"

  • Añade funciones al servicio:

    • Ejemplo: core_user_get_users

Paso 2: Crear un Token para Acceder

  1. Ve a:

    Administración del sitio > Extensiones > Servicios web > Gestionar tokens
  2. Crea un token:

    • Usuario: uno con permisos suficientes

    • Servicio: el que creaste antes

    • Guarda el token, lo usarás para hacer las peticiones


Paso 3: Probar el Webservice desde DDEV

Opción A: Usar CURL desde el contenedor

  1. Entra al contenedor web:

ddev ssh
  1. Usa curl para llamar a la función (por ejemplo, core_user_get_users):

Código

curl -X POST "https://moodle.ddev.site/webservice/rest/server.php" \
--data "wstoken=MITOKEN" \
--data "wsfunction=core_user_get_users" \
--data "moodlewsrestformat=json" \
--data-urlencode 'criteria[0][key]=email' \
--data-urlencode 'criteria[0][value]= apiuser@ejemplo.com'


curl "https://moodle.ddev.site/webservice/rest/server.php" \
--data "wstoken=MITOKEN" \
--data "core_course_get_categories" \
--data "moodlewsrestformat=json" \
--data-urlencode 'criteria[0][key]=email' \
--data-urlencode 'criteria[0][value]= apiuser@ejemplo.com'

Snippets relacionados

Lo siento!!!, todavía no tengo contenidos del blog para esta categoría, pero puedes buscar en los Blog o en Cursos

También puedes utilizar el buscador de la parte superior, para encontrar lo que buscas en toda la web.

Más Snippets