2013-03-11 64 views
1

我已经设法让用户头像URI使用下面的代码:如何获取用户配置文件的URI?

URI uri = ComponentAccessor.getAvatarService().getAvatarURL(user, user.getName(), Avatar.Size.SMALL); 

,并返回:/jira/secure/useravatar?size=small&avatarId=10122

我的问题是 - 有越来越URI用户配置文件的方法吗?

回答

1

用户的配置文件位于jira.server.com/secure/ViewProfile.jspa?name=john,所以我想你可以得到的URI,你可以这样做:

user = "john" 
user_profile_uri = "/jira/secure/ViewProfile.jspa?name=" + user 

更新

要动态地找到URI:

import com.atlassian.jira.ComponentManager 
import java.net.URI 
uri = new URI(ComponentManager.getInstance().getApplicationProperties().getString("jira.baseurl")) 
return user_profile_uri = uri.getPath() + "ViewProfile.jspa?name=" + user 
+0

是的,我知道我可以手动创建URI,比方说使用String构建器。问题是,这个URI的第一部分在不同的服务器上有所不同 - 所以在我的机器上它是'/ jira/secure',但是在生产中它稍有不同。因此,我正在寻找将始终返回正确路径的API。 – Krokodylowy 2013-03-12 10:35:45

+0

回答更新,如果这有帮助请[接受此答案](http://meta.stackexchange.com/questions/16721/how-does-accept-rate-work/65088#65088):) – Kuf 2013-03-21 12:22:20

+0

嗯,谢谢对于贡献,但它不是我一直在寻找的答案。你提供的代码返回我的计算机在本地网络的名称,我的代码为阿凡达URI返回'localhost' ...我知道它会工作,但它可能看起来有点奇怪。最后,我使用了应用于Avatar URI的正则表达式的解决方案。 而且我仍然相信必须有API来做到这一点。 – Krokodylowy 2013-03-21 15:25:29

相关问题