2017-08-09 51 views
0

我嘗試添加新用戶可用參數使用REST Web服務的Moodle 3.2,我想自定義學生簡介thees場(phone1departmentinstitution)。 我用這個代碼Moodle的3.2 Web服務core_create_user

$token = 'a38805c00f33023f7854d5adc720c7a7'; 
$domainname = 'http://localhost/moodle'; 
$functionname = 'core_user_create_users'; 
$restformat = 'json'; 

$user2 = new stdClass(); 
$user2->username = strtolower($rsnew['Serial']); 
$user2->password = $rsnew['pass']; 
$user2->firstname = $rsnew['Fname']; 
$user2->lastname = $rsnew['Lname']; 
$user2->email = $rsnew['Email']; 
$user2->lang = 'en'; 
$user2->auth = 'manual'; 
$user2->country = $rsnew['Country']; 
$user2->timezone = '99'; 
$user2->phone1 = $rsnew['phone']; 
$user2->department = $rsnew['dept']; 
$user2->institution = $rsnew['branch']; 
$user2->idnumber = $rsnew['grade']; 
$users = array($user2); 
$params = array('users' => $users); 
$serverurl = $domainname . '/webservice/rest/server.php'. '?wstoken=' . $token . '&wsfunction='.$functionname; 
require_once('./curl.php'); 
$curl = new curl; 

$restformat = ($restformat == 'json')?'&moodlewsrestformat=' . $restformat:''; 
$resp = $curl->post($serverurl . $restformat, $params); 

,但我得到這個錯誤:

{ 
    "exception": "invalid_parameter_exception", 
    "errorcode": "invalidparameter", 
    "message": "Invalid parameter value detected", 
    "debuginfo": "users => Invalid parameter value detected: Unexpected keys (phone1, department, institution) detected in parameter array." 
} 

我應該怎麼做才能解決這個問題?

回答

0

正如錯誤所示,該Web服務不支持您要提供的字段。您可以參考函數本身來找出哪些字段是受支持的以及它們必須包含哪些數據。

core_user_get_users

我不是使用現有的Web服務您的問題知道的一種解決方法。但是,您可以創建自己的包含這些附加字段的內容。

請注意,這聽起來像這是一個理想的功能,應該在issue tracker上提出。