2013-09-28 6 views
1

Я использую веб-сервис moodle. Я получаю токен от '/login/token.php', но после того, как я это сделал, что мне с ним делать? Я не могу найти документацию о том, как получить идентификатор пользователя из этого токена или сделать что-нибудь с ним.Moodle - для чего нужен токен?

+1

Какой веб-сервис вы используете? – gnuwings

ответ

1

Token - это ключ, который будет использоваться в качестве аутентификации пользователя веб-сервиса, который будет использовать его. Он связан с каждой функцией веб-служб.

1

Если у вас есть токен, используйте этот токен на скрипте client.php, чтобы проверить, правильно ли работает ваш веб-сервис. всякий раз, когда пользователь использует этот веб-сервис, ему нужен этот токен. Каждая функция веб-службы имеет уникальный токен.

Чтобы создать токен из пользовательского интерфейса, просто пройдите в своем менеджере сайта moodle-> плагины-> веб-службы-> управлять токеном. затем добавьте свою функцию и сгенерируйте токен для этой конкретной функции.

1

Посмотрите на function authenticate_user() в MOODLE/WebService/lib.php это содержит методы для аутентификации пользователя на основе имени + пароль или маркер.

Это называет function authenticate_by_token. Это проверяет таблицу external_tokens, чтобы узнать, присутствует ли ваш токен, и затем узнает пользователя для этого токена и возвращает объект аутентифицированного пользователя.

Я приземлился на эту функцию при прохождении moodle/webservice/rest/server.php. Я пользуюсь стабильным выпуском moodle 2.8.2+ (Build: 20150123)

1

Не знаю, является ли это способом к старому, но на нем навалилось. Может быть, это может помочь и другим людям.

После того, как вы получите токен, вы должны предоставить его в своих вызовах API. Так скажем, вы добавили функцию, чтобы получить все курсы, то вы можете получить курсы со следующим REST URL:

/moodle/webservice/rest/server.php?wstoken=d4ffd83ce0e2602a458b44e16634ab17&wsfunction=core_course_get_courses 

Где wstoken знамения вы получили. wsfuntion - это имя сервисной функции.

Я нашел полезный список сервисных функций в системе MOODLE:

moodle/admin/webservice/documentation.php 

Здесь можно увидеть аргументы и возвращаемые значения.

Смежные вопросы