Flickr / flickrj:用户点击网络应用后如何获取用户信息?

时间:2011-03-16 12:46:42

标签: flickr flickrj

我正在编写一个Java Web应用程序,我为其创建了一个Flickr-app。

如果Flickr用户注册我的应用程序,他/她将自动发送到我在应用程序的Flickr身份验证流程中输入的URL。除此之外,我收到一个参数frob。我可以使用那个获取该特定用户的Flickr用户ID:

flickrId = flickrj.getAuthInterface().getToken(frob).getUser().getId();

这样就可以了。

但是,如果他/她使用“您正在使用的应用”屏幕并点击我的应用,就我所知,我无法获得有关该用户的任何信息。但是,如果我使用flickrj

frob = flickrj.getAuthInterface().getFrob();

我得到像7x1x7x2x2x8x1x1x0-48x9f1xfdbx8ex9d-x00x5x9一样的frob(注意我x-ed了一些数字),无论那个frob应该是什么。如果我然后使用那个frob

flickrId = flickrj.getAuthInterface().getToken(frob).getUser().getId();

我遇到了

com.aetrion.flickr.FlickrException: 108: Invalid frob
    at com.aetrion.flickr.auth.AuthInterface.getToken(AuthInterface.java:182)
    :

如何获取有关Flickr当前登录用户的信息,我需要做什么?我曾希望找到类似于我可以在该URL中使用的占位符,或者Flickr会自动发送一些参数,但我找不到有关此信息的信息。

1 个答案:

答案 0 :(得分:0)

经过一些试验和错误之后,我只需使用flickrj创建的权限URL。

String frob = flickrj.getAuthInterface().getFrob();
return "redirect:" + flickrj.getAuthInterface().buildAuthenticationUrl(Permission.READ, frob);

这会调用我在应用程序的Flickr身份验证流程中输入的URL。唯一的问题是区分这样的请求到用户从Flickr的授权表格进入时。

但那是另一个故事......