我使用了定制服务:用于SSO的OpenID。我配置了端点,用户字段Map和其他东西。但是当我尝试使用用户名和密码登录时,它返回上面提到的错误。我看了moodle的文档,但没有得到结果。错误是:无法升级OAuth 2令牌。远程终结点的HTTP状态:{$a}
使用Moodle Version 4.2
我尝试从OAuth2 Moodle、OAuth Services、单点签核获取解决方案
打开调试模式后的跟踪
Error: mdb->get_record() found more than one record!
line 1691 of /lib/dml/moodle_database.php: call to debugging()
line 1651 of /lib/dml/moodle_database.php: call to moodle_database->get_record_sql()
line 1630 of /lib/dml/moodle_database.php: call to moodle_database->get_record_select()
line 582 of /lib/datalib.php: call to moodle_database->get_record()
line 794 of /lib/setup.php: call to get_site()
line 41 of /config.php: call to require_once()
line 31 of /admin/oauth2callback.php: call to require_once()
请在下面的链接中找到错误的屏幕截图:
error regarding oauth
2条答案
按热度按时间kg7wmglp1#
罗素的回答似乎解决了重复课程的问题-你的问题中的跟踪显示的问题。所以这部分很好,现在可以忽略了。
截图(注意,这是你后来添加的)报告了一个连接问题,具体来说,就是你的Moodle阻止了对URL的访问。这由阻止的主机列表设置控制
e5njpo682#
你能打开调试并将跟踪复制粘贴到问题中吗
编辑
config.php
并插入以下内容编辑:
您是否正在使用Moodle 4.2?
这条线
有这个代码
看起来您有多个类别为0的课程-只有站点课程应该使用该类别
检查课程表,并将非网站课程的类别更改为其他类别-网站课程ID可能为1,因此将其保留为0