通过Flattr-REST的用户身份验证:没有返回PIN



我正在尝试使用Flattr REST-API版本1(不是beta v2)编写一个新的应用程序。应用程序首先获得一个请求令牌,这似乎可以正常工作。但是我遇到了一个验证用户身份的问题。为身份验证创建的链接如下所示:

https://api.flattr.com/oauth/authenticate?access_scope=read,click&oauth_token=MY_REQUEST_TOKEN

点击链接似乎一切正常。显示了有关应用程序和请求范围的信息,但单击"Authenticate",没有pin码,但https://flattr.com/apps/pincode/MY_REQUEST_TOKEN出现以下错误:

出问题了。请再试一次

但是现在应用程序在用户的授权应用程序列表中,尽管如果用户无法获得pin码,这并没有真正帮助…

应用类型设置为客户端。这是我第一次尝试使用API,所以我不确定我是否错过了什么重要的东西?如果你能帮忙,我会很感激的。

作为更新:我们最终更改为API v2。为我们的应用程序获得授权感觉有点笨拙,因为我们将重定向设置为某些网页,在那里我们显示返回的代码,并让用户将其复制粘贴到我们的客户端应用程序中……我们创建了自己的pincode-flow:/

如果可能,请使用v2 api,它使用oauth2 +承载令牌。

但是,新的API不支持使用pincode流进行身份验证。

正如Maike所说,这可能是一个再次出现的错误:(我将创建一个内部bug单,并尝试修复它。

pincode不是计划中的功能。您可以使用oauth2"隐式授权"对资源所有者进行身份验证。目前还没有文档说明,但这是可能的。

当你做请求https://flattr.com/oauth/authorize时,你传递response_type token而不是code。这将在回调URL中附加一个access_token片段。在您的http客户端中,可以从服务器捕获302并解析片段中的access_token。

所有这些都需要在你的应用程序中有一个http客户端,你可以控制你的应用程序中的流。

最新更新