我是GWT的新手,我正在生成一个Web应用程序,我必须在其中创建一个公共URL。 在这个公共URL中,我必须传递hashtag(#)和一些参数。
我发现很难完成这项任务。
我的公开网址示例是:: http://www.xyz.com/#profile?userid=10003
答案 0 :(得分:0)
获取参数:
String userId = Window.Location.getParameter("userid");
获取anchor / hash标记: 我认为没有什么,你可以解析URL:查看Window.Location提供的方法。
答案 1 :(得分:0)
要访问GWT中的URL,您可以使用History.getToken()方法。它将为您提供跟随主题标签(“#”)的整个字符串。 在您的情况下(http://www.xyz.com/#profile?userid=10003),它将返回一个字符串“profile?userid = 10003”。有了这个,你可以随心所欲地解析它。您可以检查它是否包含(“?”)并且您可以将其拆分为“?”或者你可以得到一个子串。如何从中获取信息取决于你。
答案 2 :(得分:0)
我猜你已经有了这个网址。我对Regex并不擅长,但这应该有效:
String yourURL = "http://www.xyz.com/#profile?userid=10003";
String[] array = yourURL.split("[\\p{Lower}\\p{Upper}\\p{Punct}}]");
int userID = 0;
for (String string : array) {
if (!string.isEmpty()) {
userID = Integer.valueOf(string);
}
}
System.out.println(userID);