Moodle - Для чего использовать токен?

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


person Ari Porad    schedule 28.09.2013    source источник
comment
Какой веб-сервис вы используете?   -  person gnuwings    schedule 29.09.2013


Ответы (4)


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

person sumit    schedule 05.11.2013

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

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

person uvais    schedule 07.11.2013

Взгляните на function authenticate_user() в moodle/webservice/lib.php, он содержит методы для аутентификации пользователя на основе имени и пароля или токена.

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

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

person Pavan K Mutt    schedule 16.02.2015

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

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

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

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

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

moodle/admin/webservice/documentation.php

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

person DNRN    schedule 02.08.2016