现在越来越多使用JS来完成页面逻辑。但是有几个问题一直不知道如何解决,请教一下网友:
JS的代码不管是src方式链接进来的,还是直接写在HTML上,都是可以被用户看到的。那么只能写非关键的逻辑和算法,这个没有疑问。但是有个问题,浏览器是有debug功能的,比如Firebug或者IE8的开发者工具。当他调试到关键语句的时候,直接在debug工具里修改了某些变量的值,使得某些验证或者逻辑被跳过,调试工具甚至可以直接运行js语句修改页面行为。
这些应该如何避免呢?如果无法避免,那么有哪些地方需要注意,使得这些行为的影响降到最低?
谢谢!

解决方案 »

  1.   

    孟子老大现身了~~~哈哈
    ——————————
    但是有些功能是必须从客户端输入的。比如IE有些API是狗日的ActiveX(不讨论是否应该用的问题),js产生结果后post到服务器端的。那怎么办呢
      

  2.   

    那没有办法的啊,业务应当尽量少的原来客户端的值,比如常见的删除新闻,一般都是传递要删除的id,但后台要验证当前用户是否有权限删除该id的新闻,而不是直接delete from table where id=x
    如果页面是对所有用户开放的,则没有很好的办法吧
      

  3.   

    准备结贴。
    客户端不可信任,这个可以解决一部分问题。但是JS的大量使用是个问题啊。上几天通过debug看到了网易微薄传来传去的数据结构。
    昨天找到一本《Ajax Security》的书,很不错。哈哈