仅支持启用了Javascript的用户

Dan*_*Dan 8 javascript c# asp.net

我正在考虑创建一个仅支持启用JavaScript的用户的网站.

我的理由是,我希望在相当有限的时间预算内提供丰富的用户体验,所以如果我只支持启用了JS的人,我就不必花时间确保UI在没有JS的情况下工作并创建服务器端等效验证等.

  1. 这可能吗?不同的浏览器\平台阻止我实现这个目标吗?
  2. 这几天JS被禁用的用户比例是多少?
  3. 我如何检查是否在C#中启用了JS.

小智 20

你的理由很好.但是,您必须在服务器端实现验证,否则只需禁用JavaScript即可轻松滥用您的代码.

不,如果没有JavaScript提交任何数据"不可能"将无法解决问题.

从个人经验来看,我认为现在大多数互联网用户都支持JS.可能与JS重型站点有关的用户部分是基于移动的用户,因此除非您需要访问它们,否则它可能不应该是一个大问题.

使用单个重定向确定JS的最简单方法是使用JavaScript代码(document.cookie)设置cookie,然后使用前面提到的window.location重定向.之后,服务器应该能够读取JS设置的cookie,假设它已启用.

此外,虽然使用C#等技术在服务器和客户端上自动共享验证规则和其他逻辑非常困难,但我建议您查看Aptana Jaxer.Jaxer是一个基于JavaScript的服务器端框架,除其他外,它允许您在客户端和服务器上共享相同的JavaScript代码.非常好,如果你想在客户端验证,但不想写两次验证规则!


cle*_*tus 6

看到:

至于验证,您应该始终进行服务器端验证,而不是依赖客户端验证.你只是要求被黑客入侵.

如果您正在进行丰富的用户体验和/或您没有时间做两个(或更多)版本的网站来满足这么小的比例,我想我们已经达到了通常可以接受的时间.

但它取决于具体情况.某些网站可能会针对不成比例地禁用Javascript等的用途.