检查Wicket中的用户代理

时间:2012-05-23 22:31:27

标签: wicket user-agent

我正在使用wicket 1.5而我无法在getClientInfo()方法中看到

(WebRequest)RequestCycle.get().getRequest()

我看到了其他地方这段代码

WebClientInfo clientInfo = (WebClientInfo)WebRequestCycle.get().getClientInfo();

但我无法在Wicket 1.5中看到任何WebRequestCycle。

如何检查Wicket 1.5中的用户代理?

2 个答案:

答案 0 :(得分:10)

最简单的方法是使用

WebSession.get().getClientInfo().getUserAgent();

在较新的Wicket版本(6或更新版本)上,您应该使用:

WebClientInfo clientInfo = new WebClientInfo(getRequestCycle());

System.out.println("Client: " + clientInfo.getUserAgent());
System.out.println("Navigator: " + clientInfo.getProperties().getNavigatorAppName() + ", version " + clientInfo.getProperties().getNavigatorAppVersion()  + ", codName: " + clientInfo.getProperties().getNavigatorAppCodeName() + ", plataform: " + clientInfo.getProperties().getNavigatorPlatform() + ", AppCodName: " + clientInfo.getProperties().getNavigatorAppCodeName());
System.out.println("NavigatorUserAgent: " + clientInfo.getProperties().getNavigatorUserAgent());
System.out.println("Tamanho da tela (Width x Height): " + clientInfo.getProperties().getScreenWidth() + " x "  + clientInfo.getProperties().getScreenHeight() );

答案 1 :(得分:2)

你也可以这样做:

((WebRequest) getRequest()).getHeader("User-Agent")