0

我有 Moodle 和 Drupal 集成系统,Drupal 是主要的,首先在drupal 中创建用户,然后它将通过Web 服务在moodle 中创建,但我无法将用户图片从drupal 传送到moodle,我不想要核心修复,需要干净和系统的解决方案。

谁能帮我?

4

2 回答 2

1

不幸的是,目前核心中没有合适的 Web 服务支持这一点。您可以在主页 ▶ 站点管理 ▶ 插件 ▶ Web 服务 ▶ API 文档中查看 Moodle 安装中记录的 Web 服务。

有很多方法可以通过插件来支持这一点,但是由于您似乎并不热衷于走这条路,您是否考虑过使用 Gravatar 作为解决方案?有关于如何设置的文档:http: //docs.moodle.org/25/en/Roles_settings#Enable_Gravatar

于 2013-11-05T12:49:24.103 回答
0

第一步上传图片

localhost/moodle/webservice/upload.phptoken=9f47591ed3f6cc53720f0dc4e81&filearea=draft

参数:-

token=9f47591ed3f6cc53720f0dc4e81
filearea=draft

然后你会得到一个像

[
{
    "component": "user",
    "contextid": 5,
    "userid": "2",
    "filearea": "draft",
    "filename": "Ali Hasans Resume.pdf",
    "filepath": "/",
    "itemid": 560134043,
    "license": "unknown",
    "author": "Admin User",
    "source": "O:8:\"stdClass\":1:{s:6:\"source\";s:21:\"Ali Hasans Resume.pdf\";}"
}

]

  • 第二步更新头像

    localhost/moodle/webservice/rest/server.php?moodlewsrestformat=json&draftitemid=560134043&wsfunction=core_user_update_picture&wstoken=9f47591ed3f6cc53720f0dc4e81

参数

moodlewsrestformat=json
draftitemid=560134043  this "draftitemid" comes from upload.php response
wsfunction=core_user_update_picture
wstoken=9f47591ed3f6cc53720f0dc4e81

如果成功,那么响应会喜欢

{
"success": true,
"profileimageurl": "http://localhost/moodle/theme/image.php/alpha/core/1609845491/u/f1",
"warnings": []

}

在这里我得到了这个想法https://tracker.moodle.org/browse/MDL-56070

于 2021-02-09T11:25:06.423 回答