В этом руководстве показано, как активировать доступ к Fitness REST API, получить токены доступа OAuth и вызывать методы API с помощью HTTP-запросов.
Чтобы использовать Fitness REST API, важно понимать основы веб-сервисов RESTful и представлений JSON .
Получить аккаунт Google
Чтобы использовать Fitness REST API, вам понадобится учетная запись Google . Если у вас уже есть учетная запись, то все готово. Вы также можете создать отдельную учетную запись Google в целях тестирования.
Запросить идентификатор клиента OAuth 2.0
Выполните следующие действия, чтобы запросить идентификатор клиента OAuth 2.0 для Fitness API.
- Перейдите в консоль Google API .
- Выберите проект или создайте новый. Используйте один и тот же проект для версий Android и REST вашего приложения.
- Нажмите «Продолжить» , чтобы включить Fitness API.
- Нажмите Перейти к учетным данным .
- Нажмите «Новые учетные данные» , затем выберите «Идентификатор клиента OAuth» .
- В разделе «Тип приложения» выберите «Веб-приложение» .
- В разделе «Авторизованные источники JavaScript» введите базовый URL-адрес сайта, с которого будут исходить запросы (например,
https://developers.google.com
— это URL-адрес, используемый игровой площадкой OAuth). - В разделе URI авторизованного перенаправления введите URL-адрес сайта, на котором будут обрабатываться ответы (например,
https://developers.google.com/oauthplayground
— это URL-адрес, используемый игровой площадкой OAuth). Нажмите Создать . Ваш новый идентификатор и секрет клиента OAuth 2.0 появятся в списке идентификаторов вашего проекта. Идентификатор клиента OAuth 2.0 представляет собой строку символов, примерно такую:
780816631155-gbvyo1o7r2pn95qc4ei9d61io4uh48hl.apps.googleusercontent.com
Попробуйте REST API на игровой площадке OAuth.
OAuth Playground — это самый простой способ ознакомиться с Fitness REST API, отправляя HTTP-запросы и наблюдая за ответами, прежде чем писать какой-либо клиентский код.
Чтобы авторизовать Fitness REST API на игровой площадке OAuth:
- Перейдите на игровую площадку OAuth .
- В разделе «Шаг 1. Выбор и авторизация API» разверните Fitness v1 и выберите области Fitness, которые нужно использовать.
- Нажмите кнопку «Авторизовать API» , выберите проект консоли Google API для использования и нажмите «Разрешить» при появлении соответствующего запроса. Вы сможете получить доступ и изменить данные, связанные с выбранной учетной записью консоли Google API.
- Нажмите кнопку Код авторизации Exchange для токенов . OAuth Playground автоматически включает этот заголовок в заголовок
Authorization:
request при отправке HTTP-запросов. Обратите внимание, что срок действия токена доступа истекает через 60 минут (3600 секунд).
Отправка HTTP-запросов
В следующих примерах показано, как отправлять HTTP-запросы для получения списка всех доступных источников данных и создания нового источника данных. Для Fitness REST API формат URI:
https://www.googleapis.com/fitness/v1/ resourcePath ? parameters
Чтобы вывести список всех доступных источников данных:
- В методе HTTP выберите GET .
- В URI запроса введите
https://www.googleapis.com/fitness/v1/users/me/dataSources
- Нажмите Отправить запрос .
Запрос и ответ появляются в правой части страницы. Если запрос успешен, в ответе будет показан источник данных из предыдущего примера в формате JSON.
Чтобы создать источник данных:
- В методе HTTP выберите POST .
- В URI запроса введите
https://www.googleapis.com/fitness/v1/users/me/dataSources
- Нажмите «Ввести текст запроса» .
В окне «Тело запроса» скопируйте и вставьте следующий JSON:
{ "dataStreamName": "MyDataSource", "type": "derived", "application": { "detailsUrl": "http://example.com", "name": "Foo Example App", "version": "1" }, "dataType": { "field": [ { "name": "steps", "format": "integer" } ], "name": "com.google.step_count.delta" }, "device": { "manufacturer": "Example Manufacturer", "model": "ExampleTablet", "type": "tablet", "uid": "1000001", "version": "1" } }
В окне «Тело запроса» нажмите « Закрыть» .
Нажмите Отправить запрос .
Запрос и ответ появляются в правой части страницы. Запрос включает токен доступа OAuth в заголовок Authorization
:
Authorization: Bearer ya29. OAuthTokenValue
Если запрос успешен, первая строка ответа будет такой:
HTTP/1.1 200 OK
Используйте cURL для доступа к Fit REST API
Вы можете использовать инструмент командной строки cURL для доступа к Fit REST API. Для выполнения запросов с использованием cURL вам понадобится токен доступа OAuth (см. предыдущие инструкции ). Обратите внимание, что токены доступа истекают через час. В следующем примере показан простой сценарий bash для вывода списка всех источников данных.
#!/bin/bash ACCESS_TOKEN="" curl \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $ACCESS_TOKEN" \ https://www.googleapis.com/fitness/v1/users/me/dataSources
Следующие шаги
Чтобы узнать больше о REST API, посетите эти страницы: