我使用Box Api获得了Access Token但它在1小时内到期.我想要的是,
要么我需要非过期访问令牌,要么通过将我的Box用户ID和密码传递给API来获取访问令牌.
如果可能的话,请让我知道.
提前致谢..
你有所谓的承载令牌和刷新令牌.Bearer令牌有效期为一小时,刷新令牌有效期为60天.刷新令牌可以换成另一对令牌,这会在您刷新时重置两个时钟.
Box没有您可以通过OAuth2中的用户名密码授予获得的令牌,因为这本身不适用于需要通过其ActiveDirectory/Okta/Ping/2-factor/SecureID签名流进行SSO的企业客户.
你可能想要的是一个SDK,它为你处理令牌的刷新.大多数用户不必再次登录,除非他们去度假几周.Box已经发布了几个SDK,都在github上,带有开源许可证.他们中的大多数都会自动为您刷新令牌.
我们最近还添加了一些增强功能(2014年初),以帮助多服务器实现更顺畅地使用刷新令牌流,包括允许您使用旧的刷新令牌在狭窄的时间窗口中多次获取新令牌.这有助于多线程环境尝试跨多个线程(或服务器)获取新令牌.它还有助于您遇到网络中断并且实际上并未从初始刷新调用中获取新的令牌对.