GWT 替代方案替换 Java.net.URL

16

2
需要更多信息。你具体想做什么? - maneesh
1
我想要同样的东西,但出于不同的原因。我的哈希格式化为参数列表,我想提取/解析键/值对。这个问题的答案就是解决我的问题的答案。 - Kieveli
3个回答

6

虽然不太美观,但是您可以创建一个锚元素并从中提取所需部分。

AnchorElement a = Document.get().createAnchorElement();
a.setHref("http://test.com/somerandompath");
Window.alert(a.getPropertyString("protocol") + " " + a.getPropertyString("host")) + " " a.getPropertyString("pathname"));

a.removeFromParent();

6
public void onModuleLoad() {
    Button btn = new Button("change protocol");
    btn.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            UrlBuilder builder = Window.Location.createUrlBuilder().setProtocol("https");
            Window.Location.replace(builder.buildString());
        }
    });
    RootPanel.get().add(btn);
}

0

Window.Location 对你有帮助吗?你可以在那里读取URL,修改它并使用 .assign() 将其返回。


请不要介意,我只是想将其标记为无关。 - Eduard Wirch
1
@Martin Algesten:虽然可能有些严厉,但我认为这是下投票的适当使用。@Eduard Wirch:那么你也可以在回答中发表评论,并给作者一些时间来纠正他或她的回答(毕竟他们正在努力帮助),或者像你所做的那样明确表示他们完全错了,以便他们考虑删除自己的回答如果它是不相关的。 - haylem
Down vote 是用于完全与主题无关的事情。Window.Location 很难算是,而且阅读问题,我们怎么可能知道它是什么?这个网站应该收集知识 - 想象一下有人谷歌搜索“GWT java.net.URL 替代”,我的答案可能对那个人有用。改正它?嗯,除了编写我们现在理解实际被要求的 UrlBuilder 解析器之外... - Martin Algesten
1
就我而言,当我在寻找Window.Location提供的确切功能时却没有得到任何直接的结果时,这个答案实际上正是我所需要的。因此,虽然它与问题无关,但这个GWT新手还是很高兴拥有它。 :) - Adam Norberg
现在我对此感到内疚。抱歉 Martin,stackoverflow 不再让我取消投票了。 - Eduard Wirch
显示剩余2条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接