我正在编写一个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会自动发送一些参数,但我找不到有关此信息的信息。
答案 0 :(得分:0)
经过一些试验和错误之后,我只需使用flickrj创建的权限URL。
String frob = flickrj.getAuthInterface().getFrob();
return "redirect:" + flickrj.getAuthInterface().buildAuthenticationUrl(Permission.READ, frob);
这会调用我在应用程序的Flickr身份验证流程中输入的URL。唯一的问题是区分这样的请求到用户从Flickr的授权表格进入时。
但那是另一个故事......