我想制作一个移动应用程序,代表用户发出请求。我了解以下OAuth流程:
1. 在Web视图中打开用户以授权我的应用程序代表其发出请求 2. 当他们点击授权访问时,我的服务器端应用程序将收到一个带有授权代码的调用 3. 然后,我的服务器端应用程序需要交换授权代码以获取访问令牌
我的困惑始于第二步。Uber向我的端点发出带有授权代码的请求,但我无法知道该授权属于哪个用户。我可以将其兑换为访问令牌并在数据库中存储30天,但我无法将其返回给用户以用于发出请求。
一个想法是,我可以让用户使用电子邮件地址登录我的应用程序,然后我可以使用它作为密钥从我的服务器应用程序中获取适当的访问令牌,但我无法在第一次将访问令牌与电子邮件地址关联在我的DB表中。
我想知道这里的最佳实践是什么。我的移动应用程序应如何知道要为给定用户使用哪个访问令牌?
(我直接联系了Uber API支持,但他们要求我打开一个StackOverflow问题)
1. 在Web视图中打开用户以授权我的应用程序代表其发出请求 2. 当他们点击授权访问时,我的服务器端应用程序将收到一个带有授权代码的调用 3. 然后,我的服务器端应用程序需要交换授权代码以获取访问令牌
我的困惑始于第二步。Uber向我的端点发出带有授权代码的请求,但我无法知道该授权属于哪个用户。我可以将其兑换为访问令牌并在数据库中存储30天,但我无法将其返回给用户以用于发出请求。
一个想法是,我可以让用户使用电子邮件地址登录我的应用程序,然后我可以使用它作为密钥从我的服务器应用程序中获取适当的访问令牌,但我无法在第一次将访问令牌与电子邮件地址关联在我的DB表中。
我想知道这里的最佳实践是什么。我的移动应用程序应如何知道要为给定用户使用哪个访问令牌?
(我直接联系了Uber API支持,但他们要求我打开一个StackOverflow问题)