Сервис для
сео - оптимизаторов

Найди ошибки на сайте
Ошибки мешают продвижению сайта
Исправь ошибки на сайте
Сайт без ошибок продвигать легче
Получи новых клиентов
Новые клиенты принесут больше прибыль

Пользовательский агент или мобильный шаблон

  1. Получение токена доступа
  2. Пользовательский агент / Мобильные параметры
  3. Пример URL - Ваше приложение перенаправляет пользователя на вход через сервер авторизации
  4. Пример - Сервер авторизации перенаправляет пользователя на URI перенаправления вашего приложения
  5. Пример - Сервер авторизации перенаправляет пользователя на URI перенаправления вашего приложения с ошибкой
  6. Зачем мне использовать этот поток?

Во многих других реализациях OAuth вы увидите два потока: один для сценариев использования веб-приложений на стороне клиента (Javascript) и второй для сценариев использования мобильных приложений. Например, реализация Google OAuth 2 разделяет User Agent и Mobile на отдельные потоки и помечает их как Клиентское приложение и Установленное приложение.

Наша реализация рассматривает их как единый поток. Но отличительной особенностью является то, что клиентское приложение, которому нужно получать данные из веб-сервисов OCLC, не может обеспечить безопасность WSKey. Это может произойти, потому что все общение происходит в клиенте, таком как веб-браузер или на мобильном устройстве конечного пользователя. И в любом случае вы как разработчик приложения не можете контролировать среду, в которой работает ключ API.

Примечание. Эта диаграмма упрощает взаимодействие с перспективой клиентского приложения и удаляет подробности того, что происходит на сервере авторизации OCLC.

Получение токена доступа

В отличие от явного потока кода авторизации, получение токена доступа с помощью пользовательского агента или мобильного потока является одностадийным процессом. Клиент должен запросить AccessToken, создав URL для OCLC Сервер авторизации конечная точка кода авторизации. Затем клиент должен перенаправить веб-браузер пользователя на этот URL-адрес. После того, как пользователь перенаправлен, ему предоставляется экран входа в систему, на котором он должен указать правильную комбинацию имени пользователя и пароля. Если пользователь успешно войдет в систему, то сервер WSKey перенаправит веб-браузер пользователя обратно на указанный URL-адрес перенаправления и передаст информацию о токене доступа клиенту через хэш URL-адреса.

Клиенты могут указать, у какого пользователя должна проходить аутентификация, через authenticatingInstitutionId. Если authenticatingInstitutionId не указан, то пользователь перенаправляется на экран «Откуда вы» (WAYF), чтобы выбрать учреждение для аутентификации.

Базовый URL: https://authn.sd00.worldcat.org/oauth2/authorizeCode

Пользовательский агент / Мобильные параметры

Имя Описание Обязательно? Ожидаемые / выборочные значения client_id Тип предоставления обозначает тип разрешения OAuth, которое запрашивает клиент. Это значение является фиксированным для этого шаблона.
Да client_credentials authenticatingInstitutionId Идентификатор реестра WorldCat для учреждения, отвечающего за аутентификацию пользователя, когда основная информация включена в запрос. Нет 128807 contextInstitutionId Идентификатор реестра WorldCat для учреждения, данные которого клиент запрашивает для доступа или изменения.
Нет 128807 redirect_uri URL WSKey должен перенаправлять пользователя в случае успеха или сбоя. Да http://library.worldshare.edu/test.php response_type Тип ответа, который должен возвращать сервер.
Да область действия маркера Список служб, разделенных пробелами, для которых клиент запрашивает доступ. да

  • WorldCatMetadataAPI
  • WMS_ACQ% 20WMS_VIC

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

Пример URL - Ваше приложение перенаправляет пользователя на вход через сервер авторизации

https://authn.sd00.worldcat.org/oauth2/authorizeCode? client_id = jdfRzYZbLc8HZXFByyyLGrUqTOOmkJOAPi4tAN0E7xI3hgE2xDgwJ7YPtkwM6W3ol5yz0d0JHgE1G2Wa & authenticatingInstitutionId = 128807 & contextInstitutionId = 128807 & redirect_uri = HTTP% 3A% 2F% 2Flibrary.worldshare.edu% 2Ftest.html & response_type = маркер и сфера = WMS_NCIP & состояние = MyAccount

Пример - Сервер авторизации перенаправляет пользователя на URI перенаправления вашего приложения

http://library.worldshare.edu/test.html#access_token=tk_Kebz4BpEp9dAsghA7KpWx6dYD1OZKWBlHjqP & token_type = носителем & expires_in = 1199 & expires_at = 2013-08-23 18: 45: 29Z & principalID = cpe4c7f6-f5a4-41fa-35c9-9d59443f544p & principalIDNS = урна: OCLC: платформа : 128807 & contextInstitutionId = 128807 & state = myaccount

Обратите внимание, что URI перенаправления имеет свойства токена доступа, добавленные как часть фрагмента URL (часть, перед которой стоит символ «#»). Свойства добавляются таким образом, чтобы они были доступны для JavaScript.

Пример - Сервер авторизации перенаправляет пользователя на URI перенаправления вашего приложения с ошибкой

http://library.worldshare.edu/test.html#error=invalid_client_id & error_description = WSKey + is + invalid & http_code = 401 & state =% 2Fmyaccount Имя Описание token_type Тип токена. В нашей реализации это всегда будет «bearer» access_token Значение токена доступа. Это то, что клиент должен будет отправить в веб-сервис. expires_in Число секунд, в течение которых у токена доступа истекает PrincipalID. Идентификатор пользователя, который вошел в систему. Имя_области PrincipalID. Имя субъекта-субъекта, ID пользователя которого находится в contextInstitutionId. Идентификатор учреждения WorldCat реестра, для которого у токена доступа есть права на доступ к метке времени expires_at, когда Токен доступа истекает.

Зачем мне использовать этот поток?

Существует два возможных сценария, в которых вы можете использовать пользовательский агент / мобильный поток. Первый сценарий - это если вы создавали форму Javascript, которая позволяла пользователю запрашивать покупку книги. В этом случае вы захотите войти в систему, чтобы захватить его личность, а затем передать его как часть запроса. Это может быть сделано через поток User Agent.

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

Org/oauth2/authorizeCode?
Зачем мне использовать этот поток?