使用Moodle Web服务创建用户

吉尔赫姆

我试图通过Web服务api在Moodle上创建一个新用户。

我尝试了一个在github上找到示例以及另一个php代码

在两者中,我收到相同的响应:

“在单个结构中缺少必需的密钥:用户”

响应:

{
    "exception":"invalid_parameter_exception",
    "errorcode":"invalidparameter",
    "message":"Invalid parameter value detected",
    "debuginfo":"Missing required key in single structure: users"
}

我尝试通过数组更改对象,但错误仍然存​​在。

我的代码:

$functionname = 'core_user_create_users';
$user1 = new stdClass();
$user1->id = 1;
$user1->username = 'testusername1';
$user1->password = 'testpassword1';
$user1->firstname = 'testfirstname1';
$user1->lastname = 'testlastname1';
$user1->email = '[email protected]';
$user1->auth = 'manual';
$user1->idnumber = 'testidnumber1';
$user1->description = 'Hello World!';
$user1->city = 'testcity1';
$user1->country = 'BR';



$token = 'mytoken';
$domainname = 'localhost/moodle';
$functionname = 'core_user_create_users';
$restformat = 'json';
$serverurl = $domainname . '/webservice/rest/server.php'. '?wstoken=' . $token . '&wsfunction='.$functionname.'&moodlewsrestformat=' . $restformat;

$users = array($user1);
$params = array('users' => $users); 

$context = stream_context_create(array(
    'http' => array(
        'method' => 'POST',                    
        'header' => 'Content-Type: text/plain',
        'content' => $params                             
    )
));

$contents = file_get_contents($serverurl, null, $context);            

//print_r($contents);

$resposta = json_decode($contents);  

我有一个有效的令牌,并且允许用户使用该core_user_create_users功能

安德烈·戈里什金(Andrey Goryushkin)

使用必需的键“用户”得到相同的问题,用此=>解决问题

$serverurl = $domainname . '/webservice/rest/server.php'. '?wstoken=' . $token . '&wsfunction='.$functionname;
    //require_once('../curl.php');
    $curl = new curl;
    $params = "&users[0][username]=loginnn&users[0][password]=4815162342Qq*&users[0][firstname]=allala&users[0][lastname]=trest&users[0][email][email protected]";
    //if rest format == 'xml', then we do not add the param for backward compatibility with Moodle < 2.2
    $restformat = ($restformat == 'json')?'&moodlewsrestformat=' . $restformat:'';
    $resp = $curl->post($serverurl . $restformat, $params);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用Web服务API函数挂起Moodle用户

来自分类Dev

使Angular与Moodle Web服务一起使用

来自分类Dev

使Angular与Moodle Web服务一起使用

来自分类Dev

使用 node.js 服务 Moodle LMS

来自分类Dev

在Moodle中,即使用户将登录更改为

来自分类Dev

如何使用Moodle网站基地添加更多MNET服务

来自分类Dev

如何使用Moodle网站基地添加更多MNET服务

来自分类Dev

使用asp.net Web应用程序的Moodle SSO

来自分类Dev

使用webmatrix创建Web服务

来自分类Dev

使用Moodle对Web应用程序的用户进行身份验证

来自分类Dev

使用Web服务将Scorm文件上传到Moodle中的课程

来自分类Dev

使用Web服务将Scorm文件上传到Moodle中的课程

来自分类Dev

使用JSONP使用GAS创建Web服务

来自分类Dev

使用Spring Boot创建RESTful Web服务

来自分类Dev

如何使用 CloudKit Web 服务创建 CKReference?

来自分类Dev

Hybris 使用 Intellij 创建 Web 服务

来自分类Dev

PrestaShop:无法使用 Web 服务创建订单

来自分类Dev

Moodle和C#-Web服务配置

来自分类Dev

使用服务帐户和Google Admin SDK创建用户?

来自分类Dev

在Linux ubuntu上使用创建的用户登录服务器

来自分类Dev

使用服务帐户和Google Admin SDK创建用户?

来自分类Dev

创建Moodle插件

来自分类Dev

如何通过Java ReSTful Web服务中的输入参数值来使用户存储过程完成更新和创建记录操作

来自分类Dev

无法使用Web服务向用户分配角色

来自分类Dev

使用Web服务从数据库加载用户信息

来自分类Dev

即使用户离开页面,如何使Web服务运行完成

来自分类Dev

创建POJO以使用Spring使用REST Web服务

来自分类Dev

创建POJO以使用Spring使用REST Web服务

来自分类Dev

创建一个新用户并使用该用户安装Windows服务

Related 相关文章

热门标签

归档