es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Moodle Web Service responde con una excepción de parámetro inválido.

He creado contenedores de Moodle y Mariadb con Docker.

Moodle: 3.11.4

Mariadb: 10.3

Estoy intentando ejecutar el siguiente webservice:

cliente:

wwwroot: ‘http://localhost:8012’,

servicio: ‘moodlemobileapp’,

token: ‘8faf4879d2c654f11e404095032ae382’,

strictSSL: true

llamada:
curl “http://localhost:8012/webservice/rest/server.php?wstoken=8faf4879d2c654f11e404095032ae382&moodlewsrestformat=json&wsfunction=coreusergetusersby_field&moodlewsrestformat=json&id=2″

pero obtengo el siguiente error:
{
“exception”:”invalidparameterexception”,
“errorcode”:”invalidparameter”,
“message”:”Se detectó un valor de parámetro no válido (falta una clave requerida en una estructura única: field)”,
“debuginfo”:”Falta una clave requerida en una estructura única: field”
}

Lo intenté de la misma manera con el cliente de Moodle para node


client.call({
wsfunction: "core_user_get_users_by_field",
method: "POST",
args: {
id: 2
}
})…

pero también recibo el mismo error.
Revisé la documentación de la API y el id es un parámetro válido para este webservice.
¿Me podrías ayudar, por favor?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Según el mensaje de error, parece que la solicitud está omitiendo el parámetro requerido ‘field’ para el servicio web ‘core_user_get_users_by_field’.

    Puede intentar modificar su llamada para incluir el parámetro ‘field’ con un valor válido. Por ejemplo:

    curl “http://localhost:8012/webservice/rest/server.php?wstoken=8faf4879d2c654f11e404095032ae382&moodlewsrestformat=json&wsfunction=core_user_get_users_by_field&moodlewsrestformat=json&field=username&values[0]=student1”

    Aquí, estamos especificando el ‘field’ como ‘username’ y proporcionando un valor como ‘student1’ para este campo.

    También puede intentar usar un servicio web diferente para ver si el problema persiste. Por ejemplo, puede intentar llamar al servicio web ‘core_webservice_get_site_info’ con el mismo token y ver si devuelve el resultado esperado.

    Si el problema persiste, puede consultar los registros de Moodle en busca de errores o consultar los foros de la comunidad de Moodle para obtener más ayuda.

Comments are closed.