2016-03-01 73 views
0

我在java中构建自己的HTTP服务器,但是我面临一个问题:我想通过在运行时创建每个HTML对象来动态构建页面,问题是:我如何确定客户端浏览器的屏幕尺寸?
这个信息并不存在于HTTP标题中,所以我在考虑编写一个运行JavaScript的“假”网页,告诉服务器屏幕(它应该重定向到www.website.com/w: 1920,h:1080),但我不知道任何关于cookie的信息(我认为这对于存储这些信息是必不可少的)。
你认为我应该学习关于cookies的方式或者有其他方法吗?
顺便说一句我没有使用servlet,只是套接字,因为这就是我知道的...应该使用servlets吗?
感谢您的时间!
MatteoJava服务器端屏幕分辨率检测

回答

0

在客户端发送此信息之前,服务器对客户端屏幕一无所知。 JavaScript是确定的屏幕尺寸最简单的方法:

window.screen.availHeight 
window.screen.availWidth 

AJAX请求可以被用于将信息发送到可以在会话中存储的数据和数据库,例如备份,如果用户登录或标识的服务器不知何故。在这种情况下,你不需要cookies。然而,使用cookie的解决方案更容易,请检查如何通过javascript设置它们。但是恐怕这样的解决方案会有点不标准,如果你的网站要依靠javascript,为什么不广泛使用它,并在客户端生成所有对象,让这个懒惰的计算机工作并保存你的服务器的资源:)只需通过发送最简单的HTML脚本来完成这项工作即可提供数据。

Servlets?如果您有足够的时间去做,它可以非常轻便,只需最少的知识即可完成。

+0

嗯,我很惊讶我可以用自己的服务器做多少事,管理连接,在运行时生成HTML ......这个网站过去依赖于JS,但它是不那么有活力的东西。
我想我会使用cookie解决方案 –