我正在使用OAuth2.0认证服务和代码交换验证密钥(PKCE)来访问Spotify令牌。我在Spotify中使用我的BundleID和重定向URI注册了我的应用程序。
问题是,在我输入Spotify登录的电子邮件和密码后,我会被重定向到URL中的代码RedirectUri,但什么也没发生。
这里我的代码:
Code for Auth User
这正确地打开了我的Safari,但随后我被重定向到带有代码的URI,以访问URL中的令牌,但什么也没发生。
After the Spotify signin
我目前在iOS 14上工作,这是我如何设置我的URL类型URL Type。这是我第一次使用oAuth,我不知道我做错了什么。
因此,我的问题是如何在授权用户后返回我的应用程序?
2条答案
按热度按时间bzzcjhmw1#
该站点是真实的的站点吗?当用户被重定向到您的URL回调端点时,您应该从URL查询参数中获取
code
,并在您的服务器中将其与Access Token
交换。然后,您应该将该访问令牌存储在某个地方,并将"client-id": yourClientId
和"Authorization": userAccessToken
作为头文件传递给您每次向Spotify服务器发出的请求。ujv3wf0j2#
为了让OAuth工作流触发应用程序,
callback
URL必须是您在应用程序中“信息”选项卡上“URL类型”下配置的URL。它看起来像这样:
然后,使用此URL方案为您正在使用OAuth的网站配置回调URL。此URL可能类似于:
一旦这样配置;这是您在调用
authorize(...)
方法时将指定为withCallbackURL
参数值的URL。根据用户采取的操作,OAuth机制将触发此回调URL,如果您在设备上,将提示您“打开”应用程序;点击“打开”后,您将被带到应用程序。应用程序将接收包含授权状态和所有所需信息的深层链接,作为查询字符串参数,(按照上面的示例,显示错误情况):
用于为您的应用定义URL Scheme的开发者文档。