Как совершать вызовы между серверами с помощью Desire2Learn API

Просматривая Valence, вы не видите примеров использования .NET SDK в серверная среда. Нашей системе требуется доступ к API в неинтерактивной среде, но в документации, похоже, указано, что необходимо взаимодействие с пользователем.


person Cadmium    schedule 05.01.2012    source источник


Ответы (1)


Разница с неинтерактивными службами заключается в том, что интерактивный этап получения ключей для конкретного пользователя происходит во время настройки: вызывающий сервер затем кэширует эти ключи для последующего использования при вызове API (согласно документации).

В этой модели у вас должна быть общая учетная запись пользователя для «служебного использования», и все вызовы API будут происходить в контексте этой учетной записи, а не в контексте каждого отдельного пользователя, как это было бы для интерактивного приложения.

Обратите внимание, что это работает, потому что ключи живут очень долго; однако администраторы сайта могут сделать так, чтобы срок действия ключей истекал с тайм-аутом, поэтому вам нужно проверить значение конфигурации d2l.Security.Api.TokenTimeout, чтобы определить, каким может быть значение тайм-аута для этих ключей. Администраторы сайта также могут намеренно сбросить токены для универсальной учетной записи использования служебных программ, поэтому вы все равно захотите проверить, ссылаясь на возвращенные коды состояния, что этого не произошло.

person Viktor Haag    schedule 05.01.2012