Home  >  Q&A  >  body text

javascript - Ajax 如何防止数据盗用

前端打算用 ajax 来获取数据,可是怕辛辛苦苦输入的数据,被别人通过分析 ajax 返回的数据直接移花接木盗走。

是通过验证的防止防止这种行为的发生吗?可是目前网站是不需要注册即可使用,所以应该如何防止?

谢谢。

大概就是:

前端 -> 通过 ajax 获取数据 -> 后台 -> 返回数据

如何防止别人伪造 ajax 获取数据

迷茫迷茫2750 days ago1135

reply all(16)I'll reply

  • 巴扎黑

    巴扎黑2017-04-10 14:50:03

    服务器判断referer, 如果referer的域名是自己的域名, 就返回, 不然就不返回。

    reply
    0
  • 高洛峰

    高洛峰2017-04-10 14:50:03

    Access-Control-Allow-Origin这个header就够了

    reply
    0
  • ringa_lee

    ringa_lee2017-04-10 14:50:03

    网页是公开的,数据就是公开的,任何验证都是徒劳,都是可以被 robot 模仿的。

    可能唯一有点作用的,就是对数据进行处理,比如小说网站就不传文字,
    而是传由文字生成的图片,这是一个可以参考的例子。

    reply
    0
  • ringa_lee

    ringa_lee2017-04-10 14:50:03

    服务器生成一个token(比如 md5(key+ip+date),这个规则只有管理员知道)与html一起下发给用户,然后由用户浏览器发起ajax请求,同时附加之前服务器生成的token,服务器判断来源网站域名+token正确后给用户发回数据。
    之前为了防止投票作弊器,想到了这个办法。

    reply
    0
  • ringa_lee

    ringa_lee2017-04-10 14:50:03

    一句话,只要是能看到的,就是可以拿到的,所以不用纠结了

    reply
    0
  • 高洛峰

    高洛峰2017-04-10 14:50:03

    這是可以徹底解決的,給大家一個思路,就是把文件放在瀏覽者的內存,至於瀏覽器緩存方面,可以利用overwrite緩存。讓盜竊者得到一個無用的文件,您還可以在文件內指出他由哪個IP取得這個文件,嚇唬他們一下,讓他們以後對偷竊沒信心。我以前在香港寫了很多程序,時而會被人偷了,所以研究了這個方法,希望大家不要把辛苦工作得來的成果讓小人們奪去。

    我看到有个叫做_影xx_的,在这里骂人,佩服喔,他妈妈的辛辛苦苦凑大他,却连几行字都理解不到,大家说他懂干啥呢?

    什么权限呀,许可证呀,给访问者种种难度只是排斥而已,做了前端就是想让所有人看,像_影xx_这种无能之辈都能看。这样才有趣,大家说对不对?
    后端谁都不能看,这是对知识产权的保护。调用的src可以临时生成,也可以生成多次,也可以临时移除,缓存由我来控制,明白吗?在不明白就发邮件给我,我私下详细告诉你。

    reply
    0
  • Cancelreply