Salut, je suis nouveau avec moodle et je reçois une erreur lors de l'appel du service web.Moodle reste post erreur de retour avec la fonctionnalité core_user_get_users_by_field
Actuellement j'essaie de récupérer un utilisateur de moodle avec la fonction suivante core_user_get_users_by_field et j'utilise le service de repos pour le faire. J'ai déjà réussi à créer un utilisateur, donc je suis authentifié pour utiliser le service.
l'erreur que je reçois est
manquant clé requise dans la structure unique: champ
Le soufflet est le code a été utilisé pour créer un utilisateur. le problème que j'ai obtenu de l'erreur est que le paramètre que j'ai besoin d'envoyer pour la publication n'est pas bien formaté. Est-ce que quelqu'un sait comment rechercher correctement avec cette méthode ou toute autre méthode.
String token = "token";
String postData = "username=username";
string createRequest = string.Format("http://domain/webservice/rest/server.php?wstoken={0}&wsfunction={1}&moodlewsrestformat=json", token, "core_user_get_users_by_field");
// Call Moodle REST Service
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(createRequest);
req.Method = "POST";
req.ContentType = "application/x-www-form-urlencoded";
// Encode the parameters as form data:
byte[] formData =
UTF8Encoding.UTF8.GetBytes(postData);
req.ContentLength = formData.Length;
// Write out the form Data to the request:
using (Stream post = req.GetRequestStream())
{
post.Write(formData, 0, formData.Length);
}
// Get the Response
HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
Stream resStream = resp.GetResponseStream();
StreamReader reader = new StreamReader(resStream);
string contents = reader.ReadToEnd();
// Deserialize
JavaScriptSerializer serializer = new JavaScriptSerializer();
if (contents.Contains("exception"))
{
// Error
MoodleException moodleError = serializer.Deserialize<MoodleException>(contents);
}
else
{
// Good
}
remerciements qui ont beaucoup aidé –