我开始编写一个使用Deezer Api的 Winforms 应用程序。
现在,我坚持使用他们的OAuth 身份验证过程。
Deezer 的 OAuth 认证过程接受两种不同的流程来获得用户的认证和授权:服务器端流程和客户端流程。
- Web 应用程序使用服务器端流程
- 客户端流程与 javascript 和移动应用程序中的浏览器客户端应用程序一起使用。
我假设(可能是错误的)我可以使用客户端流程来让用户在 Winforms 应用程序中进行身份验证:
然后我编写了一个表单,在 WebBrowser 控件中启动 Deezer 登录网页,认为我可以解析响应后获取访问令牌。通常,如果我将response_type=token
参数添加到登录页面 URL,页面会允许它。
不幸的是,还redirect_uri
必须提供一个参数。但是,我不打算使用网站,因为它不适用于我的场景。
显然,没有办法欺骗这一点,登录页面显示一条错误消息,指出它丢失并拒绝启动身份验证过程。
在询问 Deezer 如何针对 Winform 应用程序使用他们的 API 之前,我想知道是否有人已经遇到过这个问题,以及他是如何解决这个问题的。
因为我是 OAuth 新手,所以我想知道我是否遗漏了一些要点,或者 Deezer API 是否不适用于我的场景。