自从换了 Linux 就摆脱了笨重的 VS 这个强大的开发工具,自动提示,自动纠错....
VS 为我提供了太多功能,已经把我宠坏了...以至于普通的编辑器我都无法习惯...
这样可不是什么好习惯,不过 Sublime Text 2 是个很好的编辑器,特别是它的插件特别
丰富提供了很多实用的功能.于是在 Linux 下前端开发基本就是实用它了.
虽说是收费软件,但是个人用户可以无限期的免费试用,只不过经常提示购买罢了...
貌似腾讯公司出品了一个叫微云(opens new window)的东东,说实话,要不是基家上某人告诉我我还真不知道==
然后就说说这个东西的事情了,貌似下载的时候只能给出下载页面的链接...故意把真实的下载地址隐藏了,而且分析到下载地址还不行
还得带 cookies 才行....咳咳,我就不说啥腾讯的坏话了,大家都懂的.然后就是下载页面上还有个举报按钮!我勒个去...分享河蟹的东西的时候就经常被爆菊了...
于是需求就来了,分析下载页面得出真正的下载地址和 cookies,让用户点击下载链接即可下载,既方便用户又免得被爆菊...
然后看了下页面的 JS... qqdisk_web_outlink.js qqdisk_web_wy.js qqviplib_2.0.0.js 三个主要的 JS 都压缩了
看着就想吐... 于是换了一个思路,F12 开启 chromium 的调试工具,在 Network 面板下查看网页到底和服务器发生了哪些交互
chromium 的开发工具非常明确的红色的标注了发生 POST 请求的链接.一眼就看到了.
测试用下载链接(opens new window)
在这个页面载入的时候可以很清楚的看到网页对http://web.cgi.weiyun.com/wy_web.fcg(opens new window)这个网址进行 POST 请求,提交的表单是个 json 对象
这样就写入了 cookies,因为是 GET 方法提交的请求,这样就可以使用跨域请求.完成 cookies 的跨越注入.具体使用方法是
var downloadcookie ='http://web.weiyun.qq.com/php/downloadCheck.php?downloadn='+
json.rsp_body.dl_cookie_name +'&downloadv='+
json.rsp_body.dl_cookie_value;var d = document;var s = d.createElement('script');
s.src = downloadcookie;
d.body.appendChild(s);
1 2 3 4 5 6 7 8 9
通过 src 可以向http://web.weiyun.qq.com(opens new window)发送 GET 请求,就完成了跨越的 cookies 注入.注意跨越请求只能支持 GET 方法,POST 是绝对不可能实现跨越请求的.
但是调试的时候需要 POST 跨越请求怎么办,最简单的办法是在启动浏览器的时候添加启动方法 chromium --disable-web-security 这样浏览器就不会阻止
跨越的 POST 请求,否则就会 console 出现下面的红色错误提示.
XMLHttpRequest cannot load http://web.cgi.weiyun.com/wy_web.fcg. Origin null is not allowed by Access-Control-Allow-Origin.