Можно ли получить токен постоянного доступа с помощью OAuth2? Я хочу использовать Box для загрузки файлов во время установки. Установка захватывает все файлы в определенной папке. У меня есть учетная запись box, настроенная как владелец папки, и в API v1 я могу получить постоянный auth_token для повторного использования в моем исполняемом файле. Но похоже, что с OAuth2 я могу получить только токен доступа на 1 час и токен обновления. Но поскольку конечный пользователь на самом деле не имеет доступа к Box, а приложение является настольным, они не могут пройти аутентификацию на лету, если срок действия токена истек. Я знаю, что есть и другие решения, но API версии 1 позволил мне это сделать, и я надеялся не потерять эту функциональность, когда версия 1 устарела.
Токен постоянного доступа в OAuth2
Ответы (2)
Реализация OAuth2 в Box не создает постоянных токенов. Однако, как и в V1 API, вы можете создать ссылку для загружаемого файла, доступную для пользователей, не являющихся пользователями Box. Вы должны установить общий доступ на «открытый» в пользовательском интерфейсе или через API файл json.
В документации есть раздел . которые объясняют, как это сделать. По сути, вы передаете PUT в конечную точку /files/ с небольшим телом JSON, например:
{"shared_link": {"access": "open"}}
Вы получите обратно тело файла json с заполненным разделом shared_link. Что-то вроде этого:
"shared_link": {
"url": "https://www.box.com/s/rh935iit6ewrmw0unyul",
"download_url": "https://www.box.com/shared/static/rh935iit6ewrmw0unyul.jpeg",
"vanity_url": null,
"is_password_enabled": false,
"unshared_at": null,
"download_count": 0,
"preview_count": 0,
"access": "open",
"permissions": {
"can_download": true,
"can_preview": true
}
Вы можете использовать токен обновления, чтобы получить новый токен доступа, который действует еще один час, и новый токен обновления.
Таким образом, вашему настольному приложению может потребоваться безопасное подключение к Интернету для чтения/записи.
- токен доступа
- срок действия токена доступа
- обновить токен
- обновить дату истечения срока действия токена**
**Каждый токен обновления действителен только в течение 14 дней. Надеялся, что Box удалит функцию истечения срока действия.
В качестве альтернативы поместите свои файлы в общедоступное место в соответствии с первоначальным предложением.