我不确定访问部分请求网址的正确方法。
在这种情况下,我想获得没有查询变量的请求路径。这是我发现的唯一方法:
String path = getRequest().getResourceRef().getHostIdentifier() +
getRequest().getResourceRef().getPath();
结果将是此网址的大胆部分: https://stackoverflow.com/questions/ask ?query = value
我还发现了大约6种获取服务器名称的方法( http://stackoverflow.com ),但我担心其中一些会在某些我不知道的情况下失败(为什么会有6种不同的方法来做一件事):
getRequest().getHostRef().getHostIdentifier();
getRequest().getHostRef().getIdentifier();
getRequest().getRootRef().getHostIdentifier();
getRequest().getRootRef().getIdentifier();
getRequest().getResourceRef().getHostIdentifier();
这似乎可以获得包含查询参数的完整网址:
getRequest().getResourceRef().getIdentifier();
非常感谢任何进一步的解释。
答案 0 :(得分:4)
如果您在UniformResource(或子类)中,我认为您可能正在寻找方法getReference(),它返回URI引用。您可能感兴趣的课程中还有许多其他便捷方法,因此您无需完成请求。请参阅UniformResource(Restlet 2.0)。