Chr*_*row 4 url restlet request
我不确定访问请求的 URL 部分的正确方法是什么。
在这种情况下,我想获取没有查询变量的请求路径。这是我发现的唯一方法:
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();
这似乎获得了带有查询参数的完整 URL:
getRequest().getResourceRef().getIdentifier();
任何进一步的解释将不胜感激。
如果您在 UniformResource(或子类)中,我想您可能正在寻找方法 getReference(),它返回 URI 引用。该类中还有许多其他您可能感兴趣的便捷方法,因此您不必通过请求。请参阅UniformResource (Restlet 2.0)。