我正在尝试在android上实现oAuth.io,我希望它能让用户不必每次都登录。如何缓存请求对象?
我今天一直在研究这个问题,我想我得出的结论是,与他们的文档相反,"缓存"不是他们在Android中的OAuth弹出窗口的有效选项。
http://docs.oauth.io/?Android#authorize-带弹出
该文档表示"cache"是一个有效的选项,您可以将其作为JSON对象中OAuth.pop()的第二个参数。
但我已经在他们的GitHub上查看了源代码,在OAuth.pop()上指定了以下内容,没有提到缓存作为一个选项。代码的其余部分似乎没有将其视为一个选项。
@param opts包含附加选项的JSONObject。它可以包含一个带有附加查询参数的"authorize"JSONObject传递到授权url。
它可能也与你有关,但看看这个关于iOS缓存的问题:
iOS 上的OAuth.io缓存
在对已接受答案的评论中,它显示了像Fitbit这样的一些提供者(我正在尝试使用它)没有提供"expires_In"属性,而OAuth.io的实现没有考虑到这一点,因此缓存立即过期。我原以为这会是这里的问题,但看起来缓存选项在安卓系统中根本不存在,也没有未来的指标。我不确定在这一点上我会怎么做,但他们的误导性文件并没有给我留下深刻印象。