遵循各种指南,我设法完成了以下工作:
现在,当我转到内置 Web 服务测试客户端时,选择在 REST API 上使用基于 token 的身份验证,选择“moodle_user_create_users”函数并输入 token 和详细信息,我得到以下信息:
REST protocol: moodle_user_create_users
URL: [...]
'<?xml version="1.0" encoding="UTF-8" ?>
<EXCEPTION class="webservice_access_exception">
<ERRORCODE>accessexception</ERRORCODE>
<MESSAGE>Access control exception</MESSAGE>
<DEBUGINFO>Access to the function moodle_user_create_users() is not allowed.
There could be multiple reasons for this:
1. The service linked to the user token does not contain the function.
2. The service is user-restricted and the user is not listed.
3. The service is IP-restricted and the user IP is not listed.
4. The service is time-restricted and the time has expired.
5. The token is time-restricted and the time has expired.
6. The service requires a specific capability which the user does not have.
7. The function is called with username/password (no user token is sent)
and none of the services has the function to allow the user.
These settings can be found in Administration > Site administration
> Plugins > Web services > External services and Manage tokens.</DEBUGINFO>
</EXCEPTION>
我错过了什么?
最佳答案
我也有同样的异常(exception)。然后我在管理仪表板中进行了此更改。
站点管理 -> 移动应用程序 -> 移动设置 -> 为移动设备启用 Web 服务。
打开这个。
那就是我解决我的问题的人。
关于web-services - Moodle 2.9.1 -- 任何网络服务功能都会给出 'access control exception',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31482243/