Что нужно сделать, прежде чем начать
Прежде чем вы сможете начать работу с этим учебным пособием, вам необходимо выполнить следующие 3 шага:
- Запрос учетных данных API члена песочницы
- Создать песочницу ORCID учетной записи
- Настройте свою игровую площадку Google Oauth
Для этого урока мы будем использовать ORCIDтестовая среда, ORCID Песочница. Песочница работает так же, как производство ORCID Реестр, за некоторыми исключениями:
- Песочница отправляет электронные письма только mailinator.com адреса
- Большинство инструментов мастера импорта не работают в песочнице.
- Ссылки меню на информационный контент («О программе», «Для исследователей», «Членство» и т. д.) не работают в песочнице.
- Песочница не содержит производственных данных
Запрос учетных данных API члена песочницы
Учетные данные API состоят из ID клиента и еще один секрет покупателя которые необходимы для сбора аутентифицированных идентификаторов и/или разрешений пользователей для взаимодействия с их ORCID записывать. Пожалуйста, подайте заявку на получение учетных данных Sandbox здесь. Добавьте примечание о том, что вы тестируете с помощью Google OAuth Playground. Имейте в виду, что это ручной процесс, и создание учетных данных может занять до 24 часов.
Создать песочницу ORCID учетной записи
В новом окне или вкладке перейдите на https://sandbox.orcid.org/register
- Введите свое имя и адрес электронной почты, а затем нажмите кнопку «Далее». ВАЖНЫЙ! Не используйте реальный адрес электронной почты! Вместо этого придумайте адрес, оканчивающийся на @mailinator.com.
- Завершите шаг 2 регистрационной формы с паролем и перейдите к шагу 3.
- Выберите предпочтительный параметр видимости, примите условия использования, установите флажок рядом с текстом «Я не робот» и, наконец, нажмите кнопку «Зарегистрироваться».
Запомните адрес электронной почты и пароль — они понадобятся вам на протяжении всего обучения!
Настройка Игровая площадка Google OAuth
- Перейдите на Игровая площадка Google OAuth
- Щелкните значок шестеренки в правом верхнем углу, чтобы открыть Конфигурация OAuth 2.0

- В раскрывающемся списке «Конечные точки Oauth» выберите «Пользовательский», введите следующие параметры и нажмите «Закрыть».
Важный! Держите Google OAuth Playground открытой, чтобы не потерять настройки, сделанные на предыдущих шагах. Вы также можете сохранить URL-адрес, который позволит вам инициализировать игровую площадку с этими конфигурациями (чтобы получить URL-адрес, щелкните значок ссылки рядом со значком шестеренки в правом верхнем углу).
Сбор аутентифицированных ORCID идентификаторы и разрешения
ORCID интеграции используют «трехсторонний протокол OAuth» для аутентификации пользователей и запроса разрешения на взаимодействие с их записями. Любая интеграция может запрашивать разрешения на чтение с помощью общедоступного API. ORCID участники могут использовать Member API для запроса разрешений на чтение и запись.
В этом разделе мы рассмотрим шаги, которые необходимо выполнить вашей собственной пользовательской интеграции, чтобы получить аутентифицированный iD и разрешение на чтение и запись в ORCID запись
Получение аутентификации iD и разрешение на доступ к записи от пользователя включает в себя следующие ОАут 2.0, стандартный отраслевой протокол для авторизации. OAuth позволяет пользователю предоставить веб-сайту или приложению доступ к информации учетной записи, хранящейся на другом сайте, не сообщая этому сайту свой пароль.
Если вы когда-либо входили на сайт, используя Google или Facebook вместо своих учетных данных для этого конкретного сайта, вы уже использовали OAuth!
Процесс OAuth включает 3 шага:
- Создайте URL-адрес авторизации
- Получить код авторизации
- Обмен кода авторизации на токен доступа
Чтобы запустить процесс OAuth, нам нужно создать специальный URL-адрес авторизации, который отправляет пользователей на ORCID экран входа. Этот URL состоит из Конечная точка авторизации, плюс параметры которые идентифицируют вашу организацию и разрешения, которые вы хотите запросить.
Чтобы запросить разрешение на добавление/обновление действий (членство, финансирование, работы, рецензирование, исследовательские ресурсы), а также на добавление/обновление личных элементов (другие имена, ключевые слова, страны, URL-адреса исследователей, веб-сайты и личные внешние идентификаторы), URL авторизации будет:
https://sandbox.orcid.org/oauth/authorize?client_id=[APP-****************]&response_type=code&scope=/read-limited%20/activities/update%20/person/update&redirect_uri=https://developers.google.com/oauthplayground
Но мы можем использовать игровую площадку Google OAuth, чтобы помочь нам создать URL-адрес авторизации.
Добавьте /activities/update, /person/update, /read-limited в поле областей и нажмите авторизовать API.
URL-адрес авторизации был бы создан с использованием информации, которую вы ввели в поля конфигурации и области действия.
An ORCID появится экран входа; войдите в свою учетную запись Sandbox с адресом электронной почты и паролем, которые вы использовали для создания ORCID учетную запись в начале этого руководства. После входа в систему появится экран OAuth. На этом экране отобразятся имя клиента и соответствующие области, которые были включены в URL-адрес авторизации. Для предоставления доступа необходимо нажать 'Разрешить доступ'
После предоставления разрешения вы будете перенаправлены обратно на игровую площадку Google OAuth, так как это был URI перенаправления, связанный с вашими учетными данными Sandbox. В конце URI перенаправления в адресной строке браузера (и под Шаг 2 раздел в левой части страницы на игровой площадке google oauth)
Получив код авторизации, вы можете обменять его на токен доступа и аутентификацию. iD пользователя, вошедшего в систему, которые вам понадобятся для выполнения действий API, для которых вы запросили разрешение.
Если вы потеряете токен доступа, вы можете завершить процесс снова, но сначала вам нужно будет отозвать разрешение для клиентского приложения, если вы используете тот же ORCID я бы. Разрешение можно отозвать, удалив клиентское приложение из раздела «Доверенные организации» на странице «Доверенные лица».
В реальной ситуации этот обмен будет выполняться вашей системой с использованием языка программирования, такого как PHP, Java или Ruby on Rails. В этом руководстве мы будем использовать Google OAuth Playground для имитации веб-приложения.
Нажмите «Обменять код авторизации для токенов»
Как только вы нажмете «Код авторизации биржи для токеновВаш токен доступа и аутентифицированный iD появится в Ответ на запрос раздел справа. См. пример ниже:
Сохраните этот токен!
Важно сохранить токен, который вы получили на шаге выше, так как вы можете легко создавать любые вызовы, которые вам нужно сделать с его помощью. Мы рекомендуем вам сохранить полный ответ обмена токенами
Теперь вы собрали аутентифицированный ID и разрешение пользователя на чтение их ORCID записывать и обновлять свои ORCID записи.
Написание ORCID запись (ПОСТ)
В этом разделе мы добавим образовательную принадлежность к вашей записи песочницы. В следующем примере мы используем конечную точку /education с правильный XML чтобы добавить информацию, но вы также можете добавить, например, Занятость или Работы. Смотрите наш Документация Github для получения дополнительных примеров файлов и конечных точек, а также разрешений, необходимых для каждого из них.
Вот пример образования XML, который вы можете использовать для этого упражнения:
<?xml version="1.0" encoding="UTF-8"?>
<education:education
xmlns:common="http://www.orcid.org/ns/common" xmlns:education="http://www.orcid.org/ns/education"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.orcid.org/ns/education ../education-3.0.xsd ">
<common:department-name>department-name</common:department-name>
<common:role-title>role-title</common:role-title>
<common:start-date>
<common:year>1948</common:year>
<common:month>02</common:month>
<common:day>02</common:day>
</common:start-date>
<common:end-date>
<common:year>1948</common:year>
<common:month>02</common:month>
<common:day>02</common:day>
</common:end-date>
<common:organization>
<common:name>common:name</common:name>
<common:address>
<common:city>common:city</common:city>
<common:region>common:region</common:region>
<common:country>AF</common:country>
</common:address>
<common:disambiguated-organization>
<common:disambiguated-organization-identifier>http://dx.doi.org/10.13039/100000001</common:disambiguated-organization-identifier>
<common:disambiguation-source>FUNDREF</common:disambiguation-source>
</common:disambiguated-organization>
</common:organization>
<common:url>http://tempuri.org</common:url>
<common:external-ids>
<common:external-id>
<common:external-id-type>grant_number</common:external-id-type>
<common:external-id-value>external-identifier-value</common:external-id-value>
<common:external-id-url>http://tempuri.org</common:external-id-url>
<common:external-id-relationship>self</common:external-id-relationship>
</common:external-id>
<common:external-id>
<common:external-id-type>grant_number</common:external-id-type>
<common:external-id-value>external-identifier-value2</common:external-id-value>
<common:external-id-url>http://tempuri.org/2</common:external-id-url>
<common:external-id-relationship>self</common:external-id-relationship>
</common:external-id>
</common:external-ids>
</education:education>
Вернитесь на вкладку браузера для Google Playground. Если вы не оставили вкладку открытой, вы можете повторно инициализировать сеанс с URL-адресом, который вы сохранили ранее (нажав «ОК» в появившемся предупреждении). Или вы можете снова настроить звонок, заполнив все соответствующие поля, убедившись, что они выглядят так, как показано на скриншотах ниже:
- Убедитесь в том, конфигурация есть твой клиент ID и секрет клиента
- ниже шага 2 на игровой площадке Google oauth у вас должен быть свой маркер доступа заполнен
Он должен либо по-прежнему иметь токен из предыдущего упражнения, либо вы можете заполнить его из предыдущего упражнения следующим образом: - Под Шагом 3 нажмите Добавить заголовки, введите значения ниже, затем нажмите Добавить и Закрыть
- Название заголовка: Принять
- Значение заголовка: приложение / vnd.orcid+ xml
- Ниже шага 3: Настройте запрос к API, установите для HTTP-метода значение POST.
- В разделе Запросить URI поле введите:
https://api.sandbox.orcid.org/v3.0/[ORCID ID]/education
Заменять [ORCID ID] с iD для записи песочницы отформатируйте XXXX-XXXX-XXXX-XXXX, с которым вы получили разрешение на взаимодействие. - Нажмите Тип содержимого > На заказ и введите приложение /vnd.orcid+xml Нажмите Добавить, затем нажмите Закрыть.
- Нажмите Введите тело запроса.
Скопируйте XML-код об образовании в верхней части этого раздела и вставьте его в Тело запроса текстовое поле.
ДОПОЛНИТЕЛЬНО: В разделе Тело запроса текстовое поле, отредактируйте XML, чтобы он отражал ваше учреждение.
За , использовать Реестр ROR найти РОР ID для вашего учрежденияn.
Нажмите Закрыть.
- Нажмите Отправить заявку.
Результаты появятся в Ответ на запрос раздел справа. Прокрутите вниз - если вы видите HTTP / 1.1 201 Создано, ваше образование было успешно добавлено!
Также сохраните код ввода, который потребуется в следующем разделе!
Посетите общедоступный вид вашей записи Sandbox по адресу https://sandbox.orcid.орг/[ORCID ID], чтобы увидеть вашу новую образовательную принадлежность.
Обратите внимание, что Source показывает имя клиента API, который добавил принадлежность — это ключевой элемент, который помогает другим системам, использующим ORCID данные определяют, является ли эта часть информации достоверной.
Обновление ORCID запись (ПОСТАВИТЬ)
В реальной ситуации вам может потребоваться обновить принадлежность исследователя. В этом разделе мы обновим нашу образовательную принадлежность, указав дату окончания.
Пут-коды — это короткие числовые коды, которые ссылаются на конкретный товар на бирже. ORCID записывать. Вы используете код размещения с вызовами API для обновления, удаления или чтения определенного элемента (в отличие от сводки элементов).
Каждый элемент в ORCID iD присваивается код пут, который однозначно идентифицирует его. При чтении всей записи или раздела код размещения можно найти как атрибут элемента. Когда вызов определенного элемента в записи, код ввода используется для идентификации товара. Коды пут уникальны в пределах того типа элемента, к которому они относятся. Используя этот пример, только одна работа в ORCID Реестр будет иметь код пут 733535, хотя 733535 также может использоваться как код пут для элемента финансирования или ключевого слова.
Когда вы публикуете элемент в записи исследователя, ответ API будет содержать код размещения для этого элемента. Вы можете сохранить код размещения, чтобы использовать его позже, если вам нужно прочитать, обновить или удалить этот элемент.
Чтобы узнать код пута для конкретного предмета, которого у нас нет, нам достаточно прочитать запись или сводку раздела, где находится этот предмет. В ответе будет возвращен код ввода для элемента, который мы хотим изменить.
В приведенном ниже примере мы обновляем один элемент образования.
Примечание. Если вы сохранили код размещения для своего учебного заведения, вы можете перейти к шагу 4 ниже. Если вы не сохранили код ввода, начните с шага 1 ниже.
- Сначала нам нужно получить поставить код для образовательной организации, которую вы только что добавили, поэтому откройте новое окно Google Playground и настройте его, выполнив первые 4 шага из раздела «Начало работы».
- На этот раз в поле Request URI введите https://api.sandbox.orcid.org/v3.0/0000-XXXX-XXXX-XXXX/educations. Обратите внимание, что мы добавили /educations в конец URI и что это множественное число. Это означает, что мы получаем сводку по всем элементам образования в этой записи, а не только по одному (мы бы поставили его в единственном числе и добавили /put-код элемента в конце).
- Нажмите «Отправить запрос», и вы должны увидеть что-то вроде изображения ниже в Ответ на запрос раздел. Найти пут-код для образования, которое вы добавили в предыдущем разделе (это будет номер, отличный от выделенного здесь).
- Изменить HTTP-метод в ПОЛОЖИЛ
- Нажмите Добавить заголовки и убедитесь, что для Accept и Content-type установлено значение application/vnd.orcid+ xml
- В разделе Запросить URI поле введите:
https://api.sandbox.orcid.org/v3.0/[ORCID ID]/education/[PUT CODE]
Заменять [ORCID ID] с iD для вашей записи в песочнице отформатируйте XXXX-XXXX-XXXX-XXXX и [PUT CODE] с кодом размещения для вашего образования. - Снова возьмите XML из раздела POST и нажмите Введите тело запроса и вставьте его.
- Изменить дату окончания вашего образования
- Нажмите Закрыть.
- Щелкните Отправить запрос.
- Результаты появятся в Ответ на запрос раздел справа. Прокрутите вниз - если вы видите HTTP / 1.1 200 OK, ваша образовательная принадлежность успешно обновлена! Если вы видите сообщение об ошибке, убедитесь, что значения заголовков в Добавить заголовки не были изменены на искаженный текст, например: application%2Fvnd.orcid%2Bxml”
- Посетить общественное мнение вашей записи Sandbox на https://sandbox.orcid.орг/[ORCID ID], чтобы увидеть вашу обновленную образовательную принадлежность с заполненной новой датой окончания.
Чтение ORCID Запись (ПОЛУЧИТЬ)
Вернитесь на вкладку браузера для Google Playground. Если вы не оставили вкладку открытой, вы можете повторно инициализировать сеанс с URL-адресом, который вы сохранили ранее (нажав «ОК» в появившемся предупреждении). Или вы можете снова настроить звонок, заполнив все соответствующие поля, убедившись, что они выглядят так, как показано на скриншотах ниже:
- Убедитесь в том, конфигурация есть твой клиент ID и секрет клиента
- Шаг 2 у вас должен быть свой маркер доступа заполнен
Он должен либо по-прежнему иметь токен из предыдущего упражнения, либо вы можете заполнить его из предыдущего упражнения следующим образом: - Step 3 Нажмите Добавить заголовки, введите значения ниже, затем нажмите Добавить и Закрыть
- Название заголовка: Принять
- Значение заголовка: приложение / vnd.orcid+ xml
- Конфигурации шага 3 должны выглядеть так, как показано на скриншоте ниже:
- Установите HTTP-метод на ПОЛУЧИТЬ.
- В поле URI запроса введите:
https://api.sandbox.orcid.org/v3.0/0000-XXXX-XXXX-XXXX/record
Заменять [ORCID ID] с iD для вашей записи песочницы, формат XXXX-XXXX-XXXX-XXXX
Обратите внимание конечная точка слово в конце URI. В данном случае мы читаем резюме всей записи, поэтому мы заканчиваем URL-адрес /record, как показано выше. - Нажмите Отправить заявку
В поле «Запрос/ответ» вы должны увидеть сводку всей записи в формате XML. Это будет немного похоже на приведенный ниже пример, в котором показана первая часть ответа. Мы выделили коды путов, как обсуждалось в предыдущем разделе.