永利澳门游戏网站:破解Trello登录协议

大部分公司都会给码农们安排一项每天必做的任务,那就是日报。有发邮件的、用trello的、用worktile(国内山寨版trello)等其他项目工具的。

我目前写的,是我理解的感觉靠谱一点的方法
假设后端的登录接口地址在oauth/

随着微信红包的普及笔者所在的项目组不及时写日报也要发红包了。规则很简单每天23点之前没有在trello上填写当日的日报就要在项目组微信群内发20块钱的红包。


是山的影子

懒得进化

夏天

人的酶很固执

灵魂的酶像荷花

——《路边野餐》

第一次登录步骤流程

1、用户点击登录按钮,前端向oauth/sign-up地址发送get请求,此时后端将会用qq的服务器地址和访问参数构造一个访问,访问qq的服务器,设定回调地址为前端的“等待”页面,并将访问得到的页面直接传给前端(注意这里不是传送json数组)

2、前端向用户展示后端发来的授权页面,不同意授权,则停止,在同意授权时,前端获得来自qq服务器的回调,进入“等待页面”,其中在回调地址中会接上authorization_code,从而获得authorization_code。

3、前端通过回调地址中的参数获得authorization_code后,将其发送给后端的oauth/get-token接口,后端通过authrization_code继续访问qq服务器获得access_token和refresh_token并且储存,再通过access_token获得用户的用户名、头像地址、性别和openId,并将这些作为接口的json返回,最后后端服务器设置cookie(永久)储存用户加密过的openId,user_id和获取access_token的时间(便于刷新access_token),并且让session储存user_id,用于检测用户的登录状态,在这个过程中,前端一直保持等待状态。

4、前端通过上一步返回的头像地址获得用户头像,然后退出等待页面,最后根据user_id对应保存用户的头像,性别和用户名这些信息,如果丢失,应该向接口oauth/user-info接口重新申请信息。

5、如果cookie丢失,则无法判断用户身份,需要重新进行授权。

6、后端同样需要储存user_name,user_image_address,user_sex。


一日午觉后,一个想法出现在了心中,可以做一个工具定时每天22:30的时候扫一遍trello看看哪些小伙们的日报还没有写,然后发短信通知他们。那么首当其冲就是要搞清楚trello的登录校验逻辑,遂有了此文。

关闭浏览器后重新自动登录

关闭浏览器之后,session会自动失效,当下一次访问到来时,只存在cookie,此时后端会根据cookie存储的user_id,获取对应数据库中的openId,将其加密后与cookie中的对比,如果一致则登录成功,设置session为user_id,失败则不登录并且清空该错误的cookie。在成功自动登录时还会检查当前时间和cookie中的刷新时间,如果差距超过三个月,就会通过access_token重新刷新access_token。

打开Trello登录页面

开启Chrome开发者工具

勾上Preserve log(不勾上,当页面跳转后之前页面的网络请求日志会被清掉)

如下图

永利澳门游戏网站 1

成功登录后到Welcome Board

永利澳门游戏网站 2

抓到请求获取数据的接口地址

接下来用Paw永利澳门游戏网站,来尝试请求

永利澳门游戏网站 3

意料之中返回401,header中没加授权信息是肯定不行滴

授权信息一般都是存在cookies里面,那么到chrome中找到请求这个接口的cookie

永利澳门游戏网站 4

发表评论

电子邮件地址不会被公开。 必填项已用*标注