Dan*_*Dan 8 javascript c# asp.net
我正在考虑创建一个仅支持启用JavaScript的用户的网站.
我的理由是,我希望在相当有限的时间预算内提供丰富的用户体验,所以如果我只支持启用了JS的人,我就不必花时间确保UI在没有JS的情况下工作并创建服务器端等效验证等.
小智 20
你的理由很好.但是,您必须在服务器端实现验证,否则只需禁用JavaScript即可轻松滥用您的代码.
不,如果没有JavaScript提交任何数据"不可能"将无法解决问题.
从个人经验来看,我认为现在大多数互联网用户都支持JS.可能与JS重型站点有关的用户部分是基于移动的用户,因此除非您需要访问它们,否则它可能不应该是一个大问题.
使用单个重定向确定JS的最简单方法是使用JavaScript代码(document.cookie)设置cookie,然后使用前面提到的window.location重定向.之后,服务器应该能够读取JS设置的cookie,假设它已启用.
此外,虽然使用C#等技术在服务器和客户端上自动共享验证规则和其他逻辑非常困难,但我建议您查看Aptana Jaxer.Jaxer是一个基于JavaScript的服务器端框架,除其他外,它允许您在客户端和服务器上共享相同的JavaScript代码.非常好,如果你想在客户端验证,但不想写两次验证规则!
看到:
至于验证,您应该始终进行服务器端验证,而不是依赖客户端验证.你只是要求被黑客入侵.
如果您正在进行丰富的用户体验和/或您没有时间做两个(或更多)版本的网站来满足这么小的比例,我想我们已经达到了通常可以接受的时间.
但它取决于具体情况.某些网站可能会针对不成比例地禁用Javascript等的用途.