如何阅读GWT中的公共URL?

时间:2014-03-27 06:05:36

标签: java url gwt

我是GWT的新手,我正在生成一个Web应用程序,我必须在其中创建一个公共URL。 在这个公共URL中,我必须传递hashtag(#)和一些参数。

我发现很难完成这项任务。

  1. 从网址中提取主题标签。
  2. 从网址中提取用户ID。
  3. 我的公开网址示例是:: http://www.xyz.com/#profile?userid=10003

3 个答案:

答案 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);