
1 phoenixlzx 2016-01-15 21:56:29 +08:00 目前的一个简单思路,虽然还是有被 hack 调用的可能.. 1. CSRF 或 API Token ,一个在页面顶部或底部 DOM 里的随机 key ,在请求的时候一律带在 parameter 里 2. referral 控制,非本站的 referral 拒绝访问( Edge 会挂掉 3. CORS 同源请求控制,和 referral 类似的效果,不过是浏览器会自动禁止调用而不是等你的 web server 拒绝 |
2 ChiangDi 2016-01-15 21:58:54 +08:00 没办法吧,微信网页版和网易云音乐 api 都被分析出来了。 |
3 qgy18 2016-01-15 22:04:47 +08:00 via iPhone 几乎不可能, 12306 做了那么多策略还是有完全独立于浏览器的抢票软件; you-get 支持那么多网站的视频地址提取。 HTTP 协议分析太容易了,私有协议都各种破解,参考各种游戏外挂。 总之,还是看成本和收益,如果分析协议带来的收益高于成本很多,那就危险了。 |
4 aprikyblue 2016-01-16 00:48:17 +08:00 如 3l 所说完全杜绝不太可能。。不过增加调用难度和成本还是可以的,一般 api 没到非去调用你的程度 |
5 flydogs 2016-01-16 06:55:41 +08:00 via iPhone api 提供方限定 ip |
6 ryanking8215 2016-01-16 08:05:52 +08:00 via iPhone |
7 Roycom 2016-01-16 08:39:12 +08:00 via iPhone 白名单域名 |
8 miyuki OP |
9 plantain 2016-01-16 10:29:40 +08:00 不可能的吧,总是可以模拟请求的。 不知道为什么会有这种需求,如果 API 能保证安全,而且加了调用频率限制,就不怕被直接调用了。 |
10 shyling 2016-01-16 10:29:53 +08:00 很多规定仅仅在浏览器里有效。。 |
11 nozama 2016-01-16 11:10:06 +08:00 via iPhone 随机改变 API 规则、、让第三方调用者“计划赶不上变化” |
12 zhjits 2016-01-16 11:16:17 +08:00 换个思路,把你的 API 做成即使开放也没什么问题的程度。 Welcome to the Internet. |