После того как первоначальный запрос к API, чтобы получить маркер доступа, вы также должны быть предоставлены с токеном обновления. Точки доступа истекают через определенный промежуток времени и нуждаются в обновлении.
Из Освежающий в раздел Доступ лексемы в Authentication Documentation: маркеры доступа
имеют ограниченный срок службы, и когда вы получите тот, который вы будете также получить истечения времени для него и токен обновления , Как только ваш токен доступа истекает, он больше не может использоваться для доступа к API. Итак, вам нужно вызвать обновление. Вы можете сделать это Размещая следующие параметры:
'client_id' // your API Key
'client_secret' // your API Secret
'refresh_token' // your refresh token
'grant_type' // this should say refresh_token
Для этого URL: https://secure.myob.com/oauth2/v1/authorize
Примечание: в то время как данные отформатированы в URL строки запроса вы не передавать информацию через URL (что бы запрос GET), вы должны передать строку запроса в тела и POST это https://secure.myob.com/oauth2/v1/authorize
В качестве примера я сохраняю токены и обновляю токены в базе данных вместе с ожидаемым временем истечения 10 минут в будущем. Если после этого будет сделан запрос, я вызываю процедуру обновления, чтобы обновить токен доступа, и могу продолжить свой весёлый путь, не требуя каждый раз показывать приглашение для входа.
Вам нужно, чтобы он показывался хотя бы один раз, чтобы узнать, какой пользователь входит в систему, и идентификатор GUID файла компании для подключения.
Вы когда-нибудь находили решение этого вопроса? – M0rty
Да, см. Принятый ответ ниже. Так работает поток. Вам просто нужно войти в систему в первый раз, а затем просто использовать токен обновления каждый раз. – Passionate